From 5ec3180919d8aa1ffb29ba22d0ea5d7bd58edb19 Mon Sep 17 00:00:00 2001 From: Hajime Hoshi Date: Sat, 13 Feb 2016 23:07:32 +0900 Subject: [PATCH] Delete JS and Map files --- _docs/public/examples/blocks.js | 66 ------------------------ _docs/public/examples/blocks.js.map | 1 - _docs/public/examples/hue.js | 60 --------------------- _docs/public/examples/hue.js.map | 1 - _docs/public/examples/keyboard.js | 60 --------------------- _docs/public/examples/keyboard.js.map | 1 - _docs/public/examples/mosaic.js | 60 --------------------- _docs/public/examples/mosaic.js.map | 1 - _docs/public/examples/paint.js | 59 --------------------- _docs/public/examples/paint.js.map | 1 - _docs/public/examples/perspective.js | 60 --------------------- _docs/public/examples/perspective.js.map | 1 - _docs/public/examples/piano.js | 61 ---------------------- _docs/public/examples/piano.js.map | 1 - _docs/public/examples/rotate.js | 60 --------------------- _docs/public/examples/rotate.js.map | 1 - 16 files changed, 494 deletions(-) delete mode 100644 _docs/public/examples/blocks.js delete mode 100644 _docs/public/examples/blocks.js.map delete mode 100644 _docs/public/examples/hue.js delete mode 100644 _docs/public/examples/hue.js.map delete mode 100644 _docs/public/examples/keyboard.js delete mode 100644 _docs/public/examples/keyboard.js.map delete mode 100644 _docs/public/examples/mosaic.js delete mode 100644 _docs/public/examples/mosaic.js.map delete mode 100644 _docs/public/examples/paint.js delete mode 100644 _docs/public/examples/paint.js.map delete mode 100644 _docs/public/examples/perspective.js delete mode 100644 _docs/public/examples/perspective.js.map delete mode 100644 _docs/public/examples/piano.js delete mode 100644 _docs/public/examples/piano.js.map delete mode 100644 _docs/public/examples/rotate.js delete mode 100644 _docs/public/examples/rotate.js.map diff --git a/_docs/public/examples/blocks.js b/_docs/public/examples/blocks.js deleted file mode 100644 index b198079a8..000000000 --- a/_docs/public/examples/blocks.js +++ /dev/null @@ -1,66 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,F,AQ,EO,N,P,V,W,Z,AH,AL,AM,AN,AR,AS,AT,AU,AV,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;P=function(ao){var $ptr,ao;return $parseFloat(B.exp(ao));};$pkg.Exp=P;V=function(ao){var $ptr,ao;if(ao>=0){return D;}else{return E;}};$pkg.Inf=V;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;Z=function(ao){var $ptr,ao;if(!((ao===ao))){return F;}return $parseFloat(B.log(ao));};$pkg.Log=Z;AH=function(){var $ptr;return F;};$pkg.NaN=AH;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AT=function(ao){var $ptr,ao;AQ.uint32array[0]=ao;return AQ.float32array[0];};$pkg.Float32frombits=AT;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;AV=function(ao){var $ptr,ao;AQ.uint32array[0]=(ao.$low>>>0);AQ.uint32array[1]=($shiftRightUint64(ao,32).$low>>>0);return AQ.float64array[0];};$pkg.Float64frombits=AV;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;F=0/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$init,R,T,IK,IP,HY,A,AB,AC;R=$pkg.CaseRange=$newType(0,$kindStruct,"unicode.CaseRange","CaseRange","unicode",function(Lo_,Hi_,Delta_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Delta=IK.zero();return;}this.Lo=Lo_;this.Hi=Hi_;this.Delta=Delta_;});T=$pkg.d=$newType(12,$kindArray,"unicode.d","d","unicode",null);IK=$arrayType($Int32,3);IP=$sliceType(R);A=function(b,c,d){var $ptr,b,c,d,e,f,g,h,i,j,k;if(b<0||3<=b){return 65533;}e=0;f=d.$length;while(true){if(!(e>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;i=((h<0||h>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+h]);if((i.Lo>>0)<=c&&c<=(i.Hi>>0)){k=(j=i.Delta,((b<0||b>=j.length)?$throwRuntimeError("index out of range"):j[b]));if(k>1114111){return(i.Lo>>0)+((((((c-(i.Lo>>0)>>0))&~1)>>0)|((b&1)>>0)))>>0;}return c+k>>0;}if(c<(i.Lo>>0)){f=h;}else{e=h+1>>0;}}return c;};AB=function(b,c){var $ptr,b,c;return A(b,c,$pkg.CaseRanges);};$pkg.To=AB;AC=function(b){var $ptr,b;if(b<=127){if(97<=b&&b<=122){b=b-(32)>>0;}return b;}return AB(0,b);};$pkg.ToUpper=AC;R.init([{prop:"Lo",name:"Lo",pkg:"",typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",pkg:"",typ:$Uint32,tag:""},{prop:"Delta",name:"Delta",pkg:"",typ:T,tag:""}]);T.init($Int32,3);$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:HY=new IP([new R.ptr(65,90,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(97,122,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(181,181,$toNativeArray($kindInt32,[743,0,743])),new R.ptr(192,214,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(216,222,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(224,246,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(248,254,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(255,255,$toNativeArray($kindInt32,[121,0,121])),new R.ptr(256,303,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(304,304,$toNativeArray($kindInt32,[0,-199,0])),new R.ptr(305,305,$toNativeArray($kindInt32,[-232,0,-232])),new R.ptr(306,311,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(313,328,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(330,375,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(376,376,$toNativeArray($kindInt32,[0,-121,0])),new R.ptr(377,382,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(383,383,$toNativeArray($kindInt32,[-300,0,-300])),new R.ptr(384,384,$toNativeArray($kindInt32,[195,0,195])),new R.ptr(385,385,$toNativeArray($kindInt32,[0,210,0])),new R.ptr(386,389,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(390,390,$toNativeArray($kindInt32,[0,206,0])),new R.ptr(391,392,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(393,394,$toNativeArray($kindInt32,[0,205,0])),new R.ptr(395,396,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(398,398,$toNativeArray($kindInt32,[0,79,0])),new R.ptr(399,399,$toNativeArray($kindInt32,[0,202,0])),new R.ptr(400,400,$toNativeArray($kindInt32,[0,203,0])),new R.ptr(401,402,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(403,403,$toNativeArray($kindInt32,[0,205,0])),new R.ptr(404,404,$toNativeArray($kindInt32,[0,207,0])),new R.ptr(405,405,$toNativeArray($kindInt32,[97,0,97])),new R.ptr(406,406,$toNativeArray($kindInt32,[0,211,0])),new R.ptr(407,407,$toNativeArray($kindInt32,[0,209,0])),new R.ptr(408,409,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(410,410,$toNativeArray($kindInt32,[163,0,163])),new R.ptr(412,412,$toNativeArray($kindInt32,[0,211,0])),new R.ptr(413,413,$toNativeArray($kindInt32,[0,213,0])),new R.ptr(414,414,$toNativeArray($kindInt32,[130,0,130])),new R.ptr(415,415,$toNativeArray($kindInt32,[0,214,0])),new R.ptr(416,421,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(422,422,$toNativeArray($kindInt32,[0,218,0])),new R.ptr(423,424,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(425,425,$toNativeArray($kindInt32,[0,218,0])),new R.ptr(428,429,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(430,430,$toNativeArray($kindInt32,[0,218,0])),new R.ptr(431,432,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(433,434,$toNativeArray($kindInt32,[0,217,0])),new R.ptr(435,438,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(439,439,$toNativeArray($kindInt32,[0,219,0])),new R.ptr(440,441,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(444,445,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(447,447,$toNativeArray($kindInt32,[56,0,56])),new R.ptr(452,452,$toNativeArray($kindInt32,[0,2,1])),new R.ptr(453,453,$toNativeArray($kindInt32,[-1,1,0])),new R.ptr(454,454,$toNativeArray($kindInt32,[-2,0,-1])),new R.ptr(455,455,$toNativeArray($kindInt32,[0,2,1])),new R.ptr(456,456,$toNativeArray($kindInt32,[-1,1,0])),new R.ptr(457,457,$toNativeArray($kindInt32,[-2,0,-1])),new R.ptr(458,458,$toNativeArray($kindInt32,[0,2,1])),new R.ptr(459,459,$toNativeArray($kindInt32,[-1,1,0])),new R.ptr(460,460,$toNativeArray($kindInt32,[-2,0,-1])),new R.ptr(461,476,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(477,477,$toNativeArray($kindInt32,[-79,0,-79])),new R.ptr(478,495,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(497,497,$toNativeArray($kindInt32,[0,2,1])),new R.ptr(498,498,$toNativeArray($kindInt32,[-1,1,0])),new R.ptr(499,499,$toNativeArray($kindInt32,[-2,0,-1])),new R.ptr(500,501,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(502,502,$toNativeArray($kindInt32,[0,-97,0])),new R.ptr(503,503,$toNativeArray($kindInt32,[0,-56,0])),new R.ptr(504,543,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(544,544,$toNativeArray($kindInt32,[0,-130,0])),new R.ptr(546,563,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(570,570,$toNativeArray($kindInt32,[0,10795,0])),new R.ptr(571,572,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(573,573,$toNativeArray($kindInt32,[0,-163,0])),new R.ptr(574,574,$toNativeArray($kindInt32,[0,10792,0])),new R.ptr(575,576,$toNativeArray($kindInt32,[10815,0,10815])),new R.ptr(577,578,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(579,579,$toNativeArray($kindInt32,[0,-195,0])),new R.ptr(580,580,$toNativeArray($kindInt32,[0,69,0])),new R.ptr(581,581,$toNativeArray($kindInt32,[0,71,0])),new R.ptr(582,591,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(592,592,$toNativeArray($kindInt32,[10783,0,10783])),new R.ptr(593,593,$toNativeArray($kindInt32,[10780,0,10780])),new R.ptr(594,594,$toNativeArray($kindInt32,[10782,0,10782])),new R.ptr(595,595,$toNativeArray($kindInt32,[-210,0,-210])),new R.ptr(596,596,$toNativeArray($kindInt32,[-206,0,-206])),new R.ptr(598,599,$toNativeArray($kindInt32,[-205,0,-205])),new R.ptr(601,601,$toNativeArray($kindInt32,[-202,0,-202])),new R.ptr(603,603,$toNativeArray($kindInt32,[-203,0,-203])),new R.ptr(604,604,$toNativeArray($kindInt32,[42319,0,42319])),new R.ptr(608,608,$toNativeArray($kindInt32,[-205,0,-205])),new R.ptr(609,609,$toNativeArray($kindInt32,[42315,0,42315])),new R.ptr(611,611,$toNativeArray($kindInt32,[-207,0,-207])),new R.ptr(613,613,$toNativeArray($kindInt32,[42280,0,42280])),new R.ptr(614,614,$toNativeArray($kindInt32,[42308,0,42308])),new R.ptr(616,616,$toNativeArray($kindInt32,[-209,0,-209])),new R.ptr(617,617,$toNativeArray($kindInt32,[-211,0,-211])),new R.ptr(619,619,$toNativeArray($kindInt32,[10743,0,10743])),new R.ptr(620,620,$toNativeArray($kindInt32,[42305,0,42305])),new R.ptr(623,623,$toNativeArray($kindInt32,[-211,0,-211])),new R.ptr(625,625,$toNativeArray($kindInt32,[10749,0,10749])),new R.ptr(626,626,$toNativeArray($kindInt32,[-213,0,-213])),new R.ptr(629,629,$toNativeArray($kindInt32,[-214,0,-214])),new R.ptr(637,637,$toNativeArray($kindInt32,[10727,0,10727])),new R.ptr(640,640,$toNativeArray($kindInt32,[-218,0,-218])),new R.ptr(643,643,$toNativeArray($kindInt32,[-218,0,-218])),new R.ptr(647,647,$toNativeArray($kindInt32,[42282,0,42282])),new R.ptr(648,648,$toNativeArray($kindInt32,[-218,0,-218])),new R.ptr(649,649,$toNativeArray($kindInt32,[-69,0,-69])),new R.ptr(650,651,$toNativeArray($kindInt32,[-217,0,-217])),new R.ptr(652,652,$toNativeArray($kindInt32,[-71,0,-71])),new R.ptr(658,658,$toNativeArray($kindInt32,[-219,0,-219])),new R.ptr(669,669,$toNativeArray($kindInt32,[42261,0,42261])),new R.ptr(670,670,$toNativeArray($kindInt32,[42258,0,42258])),new R.ptr(837,837,$toNativeArray($kindInt32,[84,0,84])),new R.ptr(880,883,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(886,887,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(891,893,$toNativeArray($kindInt32,[130,0,130])),new R.ptr(895,895,$toNativeArray($kindInt32,[0,116,0])),new R.ptr(902,902,$toNativeArray($kindInt32,[0,38,0])),new R.ptr(904,906,$toNativeArray($kindInt32,[0,37,0])),new R.ptr(908,908,$toNativeArray($kindInt32,[0,64,0])),new R.ptr(910,911,$toNativeArray($kindInt32,[0,63,0])),new R.ptr(913,929,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(931,939,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(940,940,$toNativeArray($kindInt32,[-38,0,-38])),new R.ptr(941,943,$toNativeArray($kindInt32,[-37,0,-37])),new R.ptr(945,961,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(962,962,$toNativeArray($kindInt32,[-31,0,-31])),new R.ptr(963,971,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(972,972,$toNativeArray($kindInt32,[-64,0,-64])),new R.ptr(973,974,$toNativeArray($kindInt32,[-63,0,-63])),new R.ptr(975,975,$toNativeArray($kindInt32,[0,8,0])),new R.ptr(976,976,$toNativeArray($kindInt32,[-62,0,-62])),new R.ptr(977,977,$toNativeArray($kindInt32,[-57,0,-57])),new R.ptr(981,981,$toNativeArray($kindInt32,[-47,0,-47])),new R.ptr(982,982,$toNativeArray($kindInt32,[-54,0,-54])),new R.ptr(983,983,$toNativeArray($kindInt32,[-8,0,-8])),new R.ptr(984,1007,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1008,1008,$toNativeArray($kindInt32,[-86,0,-86])),new R.ptr(1009,1009,$toNativeArray($kindInt32,[-80,0,-80])),new R.ptr(1010,1010,$toNativeArray($kindInt32,[7,0,7])),new R.ptr(1011,1011,$toNativeArray($kindInt32,[-116,0,-116])),new R.ptr(1012,1012,$toNativeArray($kindInt32,[0,-60,0])),new R.ptr(1013,1013,$toNativeArray($kindInt32,[-96,0,-96])),new R.ptr(1015,1016,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1017,1017,$toNativeArray($kindInt32,[0,-7,0])),new R.ptr(1018,1019,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1021,1023,$toNativeArray($kindInt32,[0,-130,0])),new R.ptr(1024,1039,$toNativeArray($kindInt32,[0,80,0])),new R.ptr(1040,1071,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(1072,1103,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(1104,1119,$toNativeArray($kindInt32,[-80,0,-80])),new R.ptr(1120,1153,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1162,1215,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1216,1216,$toNativeArray($kindInt32,[0,15,0])),new R.ptr(1217,1230,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1231,1231,$toNativeArray($kindInt32,[-15,0,-15])),new R.ptr(1232,1327,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(1329,1366,$toNativeArray($kindInt32,[0,48,0])),new R.ptr(1377,1414,$toNativeArray($kindInt32,[-48,0,-48])),new R.ptr(4256,4293,$toNativeArray($kindInt32,[0,7264,0])),new R.ptr(4295,4295,$toNativeArray($kindInt32,[0,7264,0])),new R.ptr(4301,4301,$toNativeArray($kindInt32,[0,7264,0])),new R.ptr(5024,5103,$toNativeArray($kindInt32,[0,38864,0])),new R.ptr(5104,5109,$toNativeArray($kindInt32,[0,8,0])),new R.ptr(5112,5117,$toNativeArray($kindInt32,[-8,0,-8])),new R.ptr(7545,7545,$toNativeArray($kindInt32,[35332,0,35332])),new R.ptr(7549,7549,$toNativeArray($kindInt32,[3814,0,3814])),new R.ptr(7680,7829,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(7835,7835,$toNativeArray($kindInt32,[-59,0,-59])),new R.ptr(7838,7838,$toNativeArray($kindInt32,[0,-7615,0])),new R.ptr(7840,7935,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(7936,7943,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(7944,7951,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(7952,7957,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(7960,7965,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(7968,7975,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(7976,7983,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(7984,7991,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(7992,7999,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8000,8005,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8008,8013,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8017,8017,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8019,8019,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8021,8021,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8023,8023,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8025,8025,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8027,8027,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8029,8029,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8031,8031,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8032,8039,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8040,8047,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8048,8049,$toNativeArray($kindInt32,[74,0,74])),new R.ptr(8050,8053,$toNativeArray($kindInt32,[86,0,86])),new R.ptr(8054,8055,$toNativeArray($kindInt32,[100,0,100])),new R.ptr(8056,8057,$toNativeArray($kindInt32,[128,0,128])),new R.ptr(8058,8059,$toNativeArray($kindInt32,[112,0,112])),new R.ptr(8060,8061,$toNativeArray($kindInt32,[126,0,126])),new R.ptr(8064,8071,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8072,8079,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8080,8087,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8088,8095,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8096,8103,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8104,8111,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8112,8113,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8115,8115,$toNativeArray($kindInt32,[9,0,9])),new R.ptr(8120,8121,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8122,8123,$toNativeArray($kindInt32,[0,-74,0])),new R.ptr(8124,8124,$toNativeArray($kindInt32,[0,-9,0])),new R.ptr(8126,8126,$toNativeArray($kindInt32,[-7205,0,-7205])),new R.ptr(8131,8131,$toNativeArray($kindInt32,[9,0,9])),new R.ptr(8136,8139,$toNativeArray($kindInt32,[0,-86,0])),new R.ptr(8140,8140,$toNativeArray($kindInt32,[0,-9,0])),new R.ptr(8144,8145,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8152,8153,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8154,8155,$toNativeArray($kindInt32,[0,-100,0])),new R.ptr(8160,8161,$toNativeArray($kindInt32,[8,0,8])),new R.ptr(8165,8165,$toNativeArray($kindInt32,[7,0,7])),new R.ptr(8168,8169,$toNativeArray($kindInt32,[0,-8,0])),new R.ptr(8170,8171,$toNativeArray($kindInt32,[0,-112,0])),new R.ptr(8172,8172,$toNativeArray($kindInt32,[0,-7,0])),new R.ptr(8179,8179,$toNativeArray($kindInt32,[9,0,9])),new R.ptr(8184,8185,$toNativeArray($kindInt32,[0,-128,0])),new R.ptr(8186,8187,$toNativeArray($kindInt32,[0,-126,0])),new R.ptr(8188,8188,$toNativeArray($kindInt32,[0,-9,0])),new R.ptr(8486,8486,$toNativeArray($kindInt32,[0,-7517,0])),new R.ptr(8490,8490,$toNativeArray($kindInt32,[0,-8383,0])),new R.ptr(8491,8491,$toNativeArray($kindInt32,[0,-8262,0])),new R.ptr(8498,8498,$toNativeArray($kindInt32,[0,28,0])),new R.ptr(8526,8526,$toNativeArray($kindInt32,[-28,0,-28])),new R.ptr(8544,8559,$toNativeArray($kindInt32,[0,16,0])),new R.ptr(8560,8575,$toNativeArray($kindInt32,[-16,0,-16])),new R.ptr(8579,8580,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(9398,9423,$toNativeArray($kindInt32,[0,26,0])),new R.ptr(9424,9449,$toNativeArray($kindInt32,[-26,0,-26])),new R.ptr(11264,11310,$toNativeArray($kindInt32,[0,48,0])),new R.ptr(11312,11358,$toNativeArray($kindInt32,[-48,0,-48])),new R.ptr(11360,11361,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11362,11362,$toNativeArray($kindInt32,[0,-10743,0])),new R.ptr(11363,11363,$toNativeArray($kindInt32,[0,-3814,0])),new R.ptr(11364,11364,$toNativeArray($kindInt32,[0,-10727,0])),new R.ptr(11365,11365,$toNativeArray($kindInt32,[-10795,0,-10795])),new R.ptr(11366,11366,$toNativeArray($kindInt32,[-10792,0,-10792])),new R.ptr(11367,11372,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11373,11373,$toNativeArray($kindInt32,[0,-10780,0])),new R.ptr(11374,11374,$toNativeArray($kindInt32,[0,-10749,0])),new R.ptr(11375,11375,$toNativeArray($kindInt32,[0,-10783,0])),new R.ptr(11376,11376,$toNativeArray($kindInt32,[0,-10782,0])),new R.ptr(11378,11379,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11381,11382,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11390,11391,$toNativeArray($kindInt32,[0,-10815,0])),new R.ptr(11392,11491,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11499,11502,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11506,11507,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(11520,11557,$toNativeArray($kindInt32,[-7264,0,-7264])),new R.ptr(11559,11559,$toNativeArray($kindInt32,[-7264,0,-7264])),new R.ptr(11565,11565,$toNativeArray($kindInt32,[-7264,0,-7264])),new R.ptr(42560,42605,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42624,42651,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42786,42799,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42802,42863,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42873,42876,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42877,42877,$toNativeArray($kindInt32,[0,-35332,0])),new R.ptr(42878,42887,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42891,42892,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42893,42893,$toNativeArray($kindInt32,[0,-42280,0])),new R.ptr(42896,42899,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42902,42921,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(42922,42922,$toNativeArray($kindInt32,[0,-42308,0])),new R.ptr(42923,42923,$toNativeArray($kindInt32,[0,-42319,0])),new R.ptr(42924,42924,$toNativeArray($kindInt32,[0,-42315,0])),new R.ptr(42925,42925,$toNativeArray($kindInt32,[0,-42305,0])),new R.ptr(42928,42928,$toNativeArray($kindInt32,[0,-42258,0])),new R.ptr(42929,42929,$toNativeArray($kindInt32,[0,-42282,0])),new R.ptr(42930,42930,$toNativeArray($kindInt32,[0,-42261,0])),new R.ptr(42931,42931,$toNativeArray($kindInt32,[0,928,0])),new R.ptr(42932,42935,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new R.ptr(43859,43859,$toNativeArray($kindInt32,[-928,0,-928])),new R.ptr(43888,43967,$toNativeArray($kindInt32,[-38864,0,-38864])),new R.ptr(65313,65338,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(65345,65370,$toNativeArray($kindInt32,[-32,0,-32])),new R.ptr(66560,66599,$toNativeArray($kindInt32,[0,40,0])),new R.ptr(66600,66639,$toNativeArray($kindInt32,[-40,0,-40])),new R.ptr(68736,68786,$toNativeArray($kindInt32,[0,64,0])),new R.ptr(68800,68850,$toNativeArray($kindInt32,[-64,0,-64])),new R.ptr(71840,71871,$toNativeArray($kindInt32,[0,32,0])),new R.ptr(71872,71903,$toNativeArray($kindInt32,[-32,0,-32]))]);$pkg.CaseRanges=HY;}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BH,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,GZ,HH,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JB,JD,JE,JF,JK,JZ,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BH=function(i){var $ptr,i;GZ(i,2,1);};$pkg.CloseOnExec=BH;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};GZ=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=R(92,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FB(p);}return[l,m];};HH=function(i,j){var $ptr,i,j,k,l,m,n,o;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}n=R(15,l,(j>>>0),0);o=n[2];K(l);if(!((o===0))){k=FB(o);}return k;};$pkg.Chmod=HH;HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JB=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r;l=0;m=$ifaceNil;n=MW.nil;o=V(i);n=o[0];m=o[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[l,m];}p=R(5,n,(j>>>0),(k>>>0));q=p[0];r=p[2];K(n);l=(q>>0);if(!((r===0))){m=FB(r);}return[l,m];};$pkg.Open=JB;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;JZ=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(338,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Stat=JZ;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,H,I,AV,AY,BA,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;H=function(e,f){var $ptr,e,f;return $parseInt(e.lastIndexOf(f))>>0;};$pkg.LastIndex=H;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;AV=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m;if(e.$length===0){return"";}if(e.$length===1){return(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0]);}g=$imul(f.length,((e.$length-1>>0)));h=0;while(true){if(!(h=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+h]).length)>>0;h=h+(1)>>0;}i=$makeSlice(CA,g);j=$copyString(i,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0]));k=$subslice(e,1);l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);j=j+($copyString($subslice(i,j),f))>>0;j=j+($copyString($subslice(i,j),m))>>0;l++;}return $bytesToString(i);};$pkg.Join=AV;AY=function(e,f){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:g=f.length;h=0;i=CA.nil;j=f;k=0;case 1:if(!(k=0){q=1;if(p>=128){q=A.RuneLen(p);}if((h+q>>0)>g){g=($imul(g,2))+4>>0;r=$makeSlice(CA,g);$copySlice(r,$subslice(i,0,h));i=r;}h=h+(A.EncodeRune($subslice(i,h,g),p))>>0;}k+=l[1];$s=1;continue;case 2:if(i===CA.nil){return f;}return $bytesToString($subslice(i,0,h));}return;}if($f===undefined){$f={$blk:AY};}$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;};$pkg.Map=AY;BA=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=AY(E.ToUpper,e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=2;case 2:return f;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ToUpper=BA;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,AT,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,AU,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};AU=function(i){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;j=i;k=new $Int64(0,0);l=false;if(!(i==="")){m=i.charCodeAt(0);if((m===45)||(m===43)){l=m===45;i=i.substring(1);}}if(i==="0"){return[new BS(0,0),$ifaceNil];}if(i===""){return[new BS(0,0),D.New("time: invalid duration "+j)];}while(true){if(!(!(i===""))){break;}n=new $Int64(0,0);o=new $Int64(0,0);p=n;q=o;r=1;s=$ifaceNil;if(!((i.charCodeAt(0)===46)||48<=i.charCodeAt(0)&&i.charCodeAt(0)<=57)){return[new BS(0,0),D.New("time: invalid duration "+j)];}t=i.length;u=AS(i);p=u[0];i=u[1];s=u[2];if(!($interfaceIsEqual(s,$ifaceNil))){return[new BS(0,0),D.New("time: invalid duration "+j)];}v=!((t===i.length));w=false;if(!(i==="")&&(i.charCodeAt(0)===46)){i=i.substring(1);x=i.length;y=AS(i);q=y[0];i=y[1];s=y[2];if(!($interfaceIsEqual(s,$ifaceNil))){return[new BS(0,0),D.New("time: invalid duration "+j)];}z=x-i.length>>0;while(true){if(!(z>0)){break;}r=r*(10);z=z-(1)>>0;}w=!((x===i.length));}if(!v&&!w){return[new BS(0,0),D.New("time: invalid duration "+j)];}aa=0;while(true){if(!(aa>0;}if(aa===0){return[new BS(0,0),D.New("time: missing unit in duration "+j)];}ac=i.substring(0,aa);i=i.substring(aa);ad=(ae=AT[$String.keyFor(ac)],ae!==undefined?[ae.v,true]:[new $Int64(0,0),false]);af=ad[0];ag=ad[1];if(!ag){return[new BS(0,0),D.New("time: unknown unit "+ac+" in duration "+j)];}if((ah=$div64(new $Int64(2147483647,4294967295),af,false),(p.$high>ah.$high||(p.$high===ah.$high&&p.$low>ah.$low)))){return[new BS(0,0),D.New("time: invalid duration "+j)];}p=$mul64(p,(af));if((q.$high>0||(q.$high===0&&q.$low>0))){p=(ai=new $Int64(0,$flatten64(q)*($flatten64(af)/r)),new $Int64(p.$high+ai.$high,p.$low+ai.$low));if((p.$high<0||(p.$high===0&&p.$low<0))){return[new BS(0,0),D.New("time: invalid duration "+j)];}}k=(aj=p,new $Int64(k.$high+aj.$high,k.$low+aj.$low));if((k.$high<0||(k.$high===0&&k.$low<0))){return[new BS(0,0),D.New("time: invalid duration "+j)];}}if(l){k=new $Int64(-k.$high,-k.$low);}return[new BS(k.$high,k.$low),$ifaceNil];};$pkg.ParseDuration=AU;BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);AT=$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)}]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AW,AZ,BA,BC,BD,BK,BM,BN,BO,BP,BS,BZ,CA,CD,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AW=function(c){var $ptr,c;return BN(c,1538,438);};$pkg.Create=AW;AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BD=function(c,d){var $ptr,c,d,e;e=C.Chmod(c,BC(d));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",c,e);}return $ifaceNil;};$pkg.Chmod=BD;BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BN=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=false;if(true&&!(((d&512)===0))&&!((((e&1048576)>>>0)===0))){g=BO(c);h=g[1];if(AD(h)){f=true;}}i=C.Open(c,d|16777216,BC(e));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[DG.nil,new Z.ptr("open",c,k)];}if(f){BD(c,e);}if(!CT){C.CloseOnExec(j);}return[BK((j>>>0),c),$ifaceNil];};$pkg.OpenFile=BN;BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BO=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Stat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Stat=BO;BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CD=function(c){var $ptr,c;return 47===c;};$pkg.IsPathSeparator=CD;CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,K,L,M,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,D,H,I,J,N,O,P,Q,R,T,U,V,W,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];S=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError","NumError","strconv",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","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CH=$sliceType($Int);CI=$sliceType($Float64);CJ=$sliceType($Float32);CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CO=$ptrType(S);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);D=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=false;c=$ifaceNil;d=a;if(d==="1"||d==="t"||d==="T"||d==="true"||d==="TRUE"||d==="True"){e=true;f=$ifaceNil;b=e;c=f;return[b,c];}else if(d==="0"||d==="f"||d==="F"||d==="false"||d==="FALSE"||d==="False"){g=false;h=$ifaceNil;b=g;c=h;return[b,c];}i=false;j=T("ParseBool",a);b=i;c=j;return[b,c];};$pkg.ParseBool=D;H=function(a,b){var $ptr,a,b,c,d,e;if(!((a.length===b.length))){return false;}c=0;while(true){if(!(c>>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>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"):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>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>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;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>0;continue;}else if(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=(n=new $Uint64(0,(m-48<<24>>>24)),new $Uint64(b.$high+n.$high,b.$low+n.$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>0;if(g>=a.length){return[b,c,d,e,f];}o=1;if(a.charCodeAt(g)===43){g=g+(1)>>0;}else if(a.charCodeAt(g)===45){g=g+(1)>>0;o=-1;}if(g>=a.length||a.charCodeAt(g)<48||a.charCodeAt(g)>57){return[b,c,d,e,f];}p=0;while(true){if(!(g>0)>>0)-48>>0;}g=g+(1)>>0;}l=l+(($imul(p,o)))>>0;}if(!((g===a.length))){return[b,c,d,e,f];}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"):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"):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<>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<>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<>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<>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;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"):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"):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"):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"):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"):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"):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(CN.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(CN.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,f,g,h,i,j,k,l,m,n;c=0;d=$ifaceNil;if(b===32){e=P(a);f=e[0];g=e[1];h=f;i=g;c=h;d=i;return[c,d];}j=Q(a);k=j[0];l=j[1];m=k;n=l;c=m;d=n;return[c,d];};$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=2;case 2:return"strconv."+a.Func+": "+"parsing "+BP(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,r,s,t,u,$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=1;continue;}if(2<=b&&b<=36){$s=2;continue;}if(b===0){$s=3;continue;}$s=4;continue;case 1:e=$pkg.ErrSyntax;$s=6;continue;$s=5;continue;case 2:$s=5;continue;case 3:if((a.charCodeAt(0)===48)&&a.length>1&&((a.charCodeAt(1)===120)||(a.charCodeAt(1)===88))){$s=7;continue;}if(a.charCodeAt(0)===48){$s=8;continue;}$s=9;continue;case 7:if(a.length<3){$s=11;continue;}$s=12;continue;case 11:e=$pkg.ErrSyntax;$s=6;continue;case 12:b=16;j=2;$s=10;continue;case 8:b=8;j=1;$s=10;continue;case 9:b=10;case 10:$s=5;continue;case 4:e=B.New("invalid base "+BJ(b));$s=6;continue;case 5: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 13:if(!(j>>24;$s=19;continue;case 16:n=(o-97<<24>>>24)+10<<24>>>24;$s=19;continue;case 17:n=(o-65<<24>>>24)+10<<24>>>24;$s=19;continue;case 18:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=6;continue;case 19:if(n>=(b<<24>>>24)){$s=20;continue;}$s=21;continue;case 20:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=6;continue;case 21:if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){$s=22;continue;}$s=23;continue;case 22:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=6;continue;case 23: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.$highi.$high||(q.$high===i.$high&&q.$low>i.$low))){$s=24;continue;}$s=25;continue;case 24:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=6;continue;case 25:d=q;j=j+(1)>>0;$s=13;continue;case 14:r=d;s=$ifaceNil;d=r;e=s;return[d,e];case 6:t=d;u=new S.ptr("ParseUint",a,e);d=t;e=u;return[d,e];$s=-1;case-1:}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=a.substring(1);}else if(a.charCodeAt(0)===45){i=true;a=a.substring(1);}j=new $Uint64(0,0);k=V(a,b,c);j=k[0];e=k[1];if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual($assertType(e,CO).Err,$pkg.ErrRange))){$assertType(e,CO).Func="ParseInt";$assertType(e,CO).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;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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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<>0)-1>>0)){g=new $Uint64(0,0);e=(((p=a.expbits,p<32?(1<>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<>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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CO.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];S.init([{prop:"Func",name:"Func",pkg:"",typ:$String,tag:""},{prop:"Num",name:"Num",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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 CH([1,3,6,9,13,16,19,23,26]);L=new CI([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 CJ([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 CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AN,AP,AQ,AR,AT,AU,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AN=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:f=0;g=$ifaceNil;h=AM();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$r=i.doPrintf(d,e);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=c.Write((k=i.buf,$subslice(new CG(k.$array),k.$offset,k.$offset+k.$length)));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;f=j[0];g=j[1];i.free();return[f,g];}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.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintf=AN;AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AR=function(c,d){var $ptr,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;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:e=0;f=$ifaceNil;g=AM();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$r=h.doPrint(d,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=c.Write((j=h.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length)));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}i=k;e=i[0];f=i[1];h.free();return[e,f];}return;}if($f===undefined){$f={$blk:AR};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.Fprint=AR;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AU=function(c,d){var $ptr,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;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:e=0;f=$ifaceNil;g=AM();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$r=h.doPrint(d,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=c.Write((j=h.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length)));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}i=k;e=i[0];f=i[1];h.free();return[e,f];}return;}if($f===undefined){$f={$blk:AU};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.Fprintln=AU;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$init,U,AG,A,D,F,G,H,I,J,K,L,M,N;U=$pkg.StringSlice=$newType(12,$kindSlice,"sort.StringSlice","StringSlice","sort",null);AG=$sliceType($String);A=function(a,b){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:c=0;d=a;e=c;f=d;case 1:if(!(e>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;i=b(h);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=3;continue;}$s=4;continue;case 3:e=h+1>>0;$s=5;continue;case 4:f=h;case 5:$s=1;continue;case 2:return e;}return;}if($f===undefined){$f={$blk:A};}$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;};$pkg.Search=A;D=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:a=[a];b=[b];c=A(a[0].$length,(function(a,b){return function(c){var $ptr,c;return((c<0||c>=a[0].$length)?$throwRuntimeError("index out of range"):a[0].$array[a[0].$offset+c])>=b[0];};})(a,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:D};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SearchStrings=D;U.prototype.Search=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=D($subslice(new AG(b.$array),b.$offset,b.$offset+b.$length),a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U.prototype.Search};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Search=function(a){return this.$get().Search(a);};F=function(a,b){var $ptr,a,b;if(a>0;case 1:if(!(db)){f=false;$s=5;continue s;}g=a.Less(e,e-1>>0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 5:if(!(f)){$s=4;continue;}$r=a.Swap(e,e-1>>0);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e-(1)>>0;$s=3;continue;case 4:d=d+(1)>>0;$s=1;continue;case 2:$s=-1;case-1:}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.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};H=function(a,b,c,d){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:e=b;case 1:f=($imul(2,e))+1>>0;if(f>=c){$s=2;continue;}if(!((f+1>>0)>0,(d+f>>0)+1>>0);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 5:if(g){$s=3;continue;}$s=4;continue;case 3:f=f+(1)>>0;case 4:i=a.Less(d+e>>0,d+f>>0);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=7;continue;}$s=8;continue;case 7:return;case 8:$r=a.Swap(d+e>>0,d+f>>0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=f;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$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;};I=function(a,b,c){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:d=b;e=0;f=c-b>>0;h=(g=((f-1>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));case 1:if(!(h>=0)){$s=2;continue;}$r=H(a,h,f,d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h-(1)>>0;$s=1;continue;case 2:i=f-1>>0;case 4:if(!(i>=0)){$s=5;continue;}$r=a.Swap(d,d+i>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H(a,e,i,d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i-(1)>>0;$s=4;continue;case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$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;};J=function(a,b,c,d){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:e=a.Less(b,c);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e){$s=1;continue;}$s=2;continue;case 1:$r=a.Swap(b,c);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:f=a.Less(d,b);$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=5;continue;}$s=6;continue;case 5:$r=a.Swap(d,b);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.Less(b,c);$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=9;continue;}$s=10;continue;case 9:$r=a.Swap(b,c);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:J};}$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;};K=function(a,b,c,d){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:e=0;case 1:if(!(e>0,c+e>>0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=1;continue;case 2:$s=-1;case-1:}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,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,x,y,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=0;e=0;g=b+(f=((c-b>>0))/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"))>>0;if((c-b>>0)>40){$s=1;continue;}$s=2;continue;case 1:i=(h=((c-b>>0))/8,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));$r=J(a,b,b+i>>0,b+($imul(2,i))>>0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J(a,g,g-i>>0,g+i>>0);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J(a,c-1>>0,(c-1>>0)-i>>0,(c-1>>0)-($imul(2,i))>>0);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$r=J(a,b,g,c-1>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=b;k=b+1>>0;l=b+1>>0;m=c;n=c;o=k;p=l;q=m;r=n;case 7:case 9:if(!(p>0;$s=14;continue;case 12:$r=a.Swap(o,p);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;p=p+(1)>>0;$s=14;continue;case 13:$s=10;continue;case 14:$s=9;continue;case 10:case 18:if(!(p>0);$s=24;case 24:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(u){$s=20;continue;}v=a.Less(q-1>>0,j);$s=25;case 25:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!v){$s=21;continue;}$s=22;continue;case 20:q=q-(1)>>0;$s=23;continue;case 21:$r=a.Swap(q-1>>0,r-1>>0);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q-(1)>>0;r=r-(1)>>0;$s=23;continue;case 22:$s=19;continue;case 23:$s=18;continue;case 19:if(p>=q){$s=8;continue;}$r=a.Swap(p,q-1>>0);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p+(1)>>0;q=q-(1)>>0;$s=7;continue;case 8:w=F(p-o>>0,o-b>>0);$r=K(a,b,p-w>>0,w);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=F(c-r>>0,r-q>>0);$r=K(a,q,c-w>>0,w);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}x=(b+p>>0)-o>>0;y=c-((r-q>>0))>>0;d=x;e=y;return[d,e];}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.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;};M=function(a,b,c,d){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:case 1:if(!((c-b>>0)>7)){$s=2;continue;}if(d===0){$s=3;continue;}$s=4;continue;case 3:$r=I(a,b,c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:d=d-(1)>>0;f=L(a,b,c);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];if((g-b>>0)<(c-h>>0)){$s=7;continue;}$s=8;continue;case 7:$r=M(a,b,g,d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=h;$s=9;continue;case 8:$r=M(a,h,c,d);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=g;case 9:$s=1;continue;case 2:if((c-b>>0)>1){$s=12;continue;}$s=13;continue;case 12:$r=G(a,b,c);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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;};N=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=a.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=0;e=c;while(true){if(!(e>0)){break;}d=d+(1)>>0;e=(e>>$min((1),31))>>0;}d=$imul(d,(2));$r=M(a,0,c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}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.$s=$s;$f.$r=$r;return $f;};$pkg.Sort=N;U.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(U).prototype.Len=function(){return this.$get().Len();};U.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+a])<((b<0||b>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+b]);};$ptrType(U).prototype.Less=function(a,b){return this.$get().Less(a,b);};U.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"):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+a]);((a<0||a>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+b]=e);};$ptrType(U).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};U.prototype.Sort=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;$r=N(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U.prototype.Sort};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Sort=function(){return this.$get().Sort();};U.methods=[{prop:"Search",name:"Search",pkg:"",typ:$funcType([$String],[$Int],false)},{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)},{prop:"Sort",name:"Sort",pkg:"",typ:$funcType([],[],false)}];U.init($String);$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["flag"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,J,K,M,O,Q,S,U,W,Y,AA,AB,AC,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,a,I,L,N,P,R,T,V,X,AD,AI,AJ,AK,AL,BB,BH,BJ;A=$packages["errors"];B=$packages["fmt"];C=$packages["io"];D=$packages["os"];E=$packages["sort"];F=$packages["strconv"];G=$packages["time"];H=$pkg.boolValue=$newType(1,$kindBool,"flag.boolValue","boolValue","flag",null);J=$pkg.boolFlag=$newType(8,$kindInterface,"flag.boolFlag","boolFlag","flag",null);K=$pkg.intValue=$newType(4,$kindInt,"flag.intValue","intValue","flag",null);M=$pkg.int64Value=$newType(8,$kindInt64,"flag.int64Value","int64Value","flag",null);O=$pkg.uintValue=$newType(4,$kindUint,"flag.uintValue","uintValue","flag",null);Q=$pkg.uint64Value=$newType(8,$kindUint64,"flag.uint64Value","uint64Value","flag",null);S=$pkg.stringValue=$newType(8,$kindString,"flag.stringValue","stringValue","flag",null);U=$pkg.float64Value=$newType(8,$kindFloat64,"flag.float64Value","float64Value","flag",null);W=$pkg.durationValue=$newType(8,$kindInt64,"flag.durationValue","durationValue","flag",null);Y=$pkg.Value=$newType(8,$kindInterface,"flag.Value","Value","flag",null);AA=$pkg.ErrorHandling=$newType(4,$kindInt,"flag.ErrorHandling","ErrorHandling","flag",null);AB=$pkg.FlagSet=$newType(0,$kindStruct,"flag.FlagSet","FlagSet","flag",function(Usage_,name_,parsed_,actual_,formal_,args_,errorHandling_,output_){this.$val=this;if(arguments.length===0){this.Usage=$throwNilPointerError;this.name="";this.parsed=false;this.actual=false;this.formal=false;this.args=CD.nil;this.errorHandling=0;this.output=$ifaceNil;return;}this.Usage=Usage_;this.name=name_;this.parsed=parsed_;this.actual=actual_;this.formal=formal_;this.args=args_;this.errorHandling=errorHandling_;this.output=output_;});AC=$pkg.Flag=$newType(0,$kindStruct,"flag.Flag","Flag","flag",function(Name_,Usage_,Value_,DefValue_){this.$val=this;if(arguments.length===0){this.Name="";this.Usage="";this.Value=$ifaceNil;this.DefValue="";return;}this.Name=Name_;this.Usage=Usage_;this.Value=Value_;this.DefValue=DefValue_;});BK=$sliceType($emptyInterface);BL=$ptrType(H);BM=$ptrType(K);BN=$ptrType(M);BO=$ptrType(O);BP=$ptrType(Q);BQ=$ptrType(S);BR=$ptrType(U);BS=$ptrType(W);BT=$ptrType(G.Duration);BU=$ptrType(AC);BV=$sliceType(BU);BW=$ptrType($Bool);BX=$ptrType($Int);BY=$ptrType($Int64);BZ=$ptrType($Uint);CA=$ptrType($Uint64);CB=$ptrType($String);CC=$ptrType($Float64);CD=$sliceType($String);CE=$funcType([BU],[],false);CF=$ptrType(AB);CG=$funcType([],[],false);CH=$mapType($String,BU);I=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BL(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(H).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseBool(b);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(H).prototype.Get=function(){var $ptr,b;b=this;return new $Bool(b.$get());};$ptrType(H).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([new H(b.$get())]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(H).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(H).prototype.IsBoolFlag=function(){var $ptr,b;b=this;return true;};L=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BM(function(){return(d.$get()>>0);},function($v){d.$set(($v>>0));},d.$target));};$ptrType(K).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(((e.$low+((e.$high>>31)*4294967296))>>0));return f;};$ptrType(K).prototype.Get=function(){var $ptr,b;b=this;return new $Int((b.$get()>>0));};$ptrType(K).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([new K(b.$get())]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(K).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BN(function(){return(e=d.$get(),new M(e.$high,e.$low));},function($v){d.$set(new $Int64($v.$high,$v.$low));},d.$target));};$ptrType(M).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseInt(b,0,64);e=d[0];f=d[1];c.$set(new M(e.$high,e.$low));return f;};$ptrType(M).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Int64(c.$high,c.$low));};$ptrType(M).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([b.$get()]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(M).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BO(function(){return(d.$get()>>>0);},function($v){d.$set(($v>>>0));},d.$target));};$ptrType(O).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseUint(b,0,64);e=d[0];f=d[1];c.$set((e.$low>>>0));return f;};$ptrType(O).prototype.Get=function(){var $ptr,b;b=this;return new $Uint((b.$get()>>>0));};$ptrType(O).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([new O(b.$get())]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(O).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};R=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BP(function(){return(e=d.$get(),new Q(e.$high,e.$low));},function($v){d.$set(new $Uint64($v.$high,$v.$low));},d.$target));};$ptrType(Q).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseUint(b,0,64);e=d[0];f=d[1];c.$set(new Q(e.$high,e.$low));return f;};$ptrType(Q).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new $Uint64(c.$high,c.$low));};$ptrType(Q).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([b.$get()]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(Q).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};T=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BQ(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(S).prototype.Set=function(b){var $ptr,b,c;c=this;c.$set(b);return $ifaceNil;};$ptrType(S).prototype.Get=function(){var $ptr,b;b=this;return new $String(b.$get());};$ptrType(S).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%s",new BK([new S(b.$get())]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(S).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V=function(b,c){var $ptr,b,c,d;c.$set(b);return(d=c,new BR(function(){return d.$get();},function($v){d.$set($v);},d.$target));};$ptrType(U).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=F.ParseFloat(b,64);e=d[0];f=d[1];c.$set(e);return f;};$ptrType(U).prototype.Get=function(){var $ptr,b;b=this;return new $Float64(b.$get());};$ptrType(U).prototype.String=function(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=B.Sprintf("%v",new BK([new U(b.$get())]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:$ptrType(U).prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};X=function(b,c){var $ptr,b,c,d,e;c.$set(b);return(d=c,new BS(function(){return(e=d.$get(),new W(e.$high,e.$low));},function($v){d.$set(new G.Duration($v.$high,$v.$low));},d.$target));};$ptrType(W).prototype.Set=function(b){var $ptr,b,c,d,e,f;c=this;d=G.ParseDuration(b);e=d[0];f=d[1];c.$set(new W(e.$high,e.$low));return f;};$ptrType(W).prototype.Get=function(){var $ptr,b,c;b=this;return(c=b.$get(),new G.Duration(c.$high,c.$low));};$ptrType(W).prototype.String=function(){var $ptr,b,c,d;b=this;return(c=b,new BT(function(){return(d=c.$get(),new G.Duration(d.$high,d.$low));},function($v){c.$set(new W($v.$high,$v.$low));},c.$target)).String();};AD=function(b){var $ptr,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$makeSlice(E.StringSlice,$keys(b).length);d=0;e=b;f=0;g=$keys(e);while(true){if(!(f=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=i.Name);d=d+(1)>>0;f++;}$r=c.Sort();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=$makeSlice(BV,c.$length);k=c;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=(o=b[$String.keyFor(n)],o!==undefined?o.v:BU.nil));l++;}return j;}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AB.ptr.prototype.out=function(){var $ptr,b;b=this;if($interfaceIsEqual(b.output,$ifaceNil)){return D.Stderr;}return b.output;};AB.prototype.out=function(){return this.$val.out();};AB.ptr.prototype.SetOutput=function(b){var $ptr,b,c;c=this;c.output=b;};AB.prototype.SetOutput=function(b){return this.$val.SetOutput(b);};AB.ptr.prototype.VisitAll=function(b){var $ptr,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;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=this;e=AD(c.formal);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=0;case 2:if(!(f=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+f]);$r=b(g);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f++;$s=2;continue;case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.VisitAll};}$f.$ptr=$ptr;$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;};AB.prototype.VisitAll=function(b){return this.$val.VisitAll(b);};AB.ptr.prototype.Visit=function(b){var $ptr,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;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=this;e=AD(c.actual);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=0;case 2:if(!(f=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+f]);$r=b(g);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f++;$s=2;continue;case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Visit};}$f.$ptr=$ptr;$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;};AB.prototype.Visit=function(b){return this.$val.Visit(b);};AB.ptr.prototype.Lookup=function(b){var $ptr,b,c,d;c=this;return(d=c.formal[$String.keyFor(b)],d!==undefined?d.v:BU.nil);};AB.prototype.Lookup=function(b){return this.$val.Lookup(b);};AB.ptr.prototype.Set=function(b,c){var $ptr,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;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:d=this;e=(f=d.formal[$String.keyFor(b)],f!==undefined?[f.v,true]:[BU.nil,false]);g=e[0];h=e[1];if(!h){$s=1;continue;}$s=2;continue;case 1:i=B.Errorf("no such flag -%v",new BK([new $String(b)]));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=4;case 4:return i;case 2:j=g.Value.Set(c);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){return k;}if(d.actual===false){d.actual={};}l=b;(d.actual||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(l)]={k:l,v:g};return $ifaceNil;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$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;};AB.prototype.Set=function(b,c){return this.$val.Set(b,c);};AI=function(b){var $ptr,b,c;c=b;if(c==="false"){return true;}else if(c===""){return true;}else if(c==="0"){return true;}return false;};AJ=function(b){var $ptr,b,c,d,e,f,g,h,i;c="";d="";d=b.Usage;e=0;while(true){if(!(e>0;while(true){if(!(f>0),f);d=d.substring(0,e)+c+d.substring((f+1>>0));g=c;h=d;c=g;d=h;return[c,d];}f=f+(1)>>0;}break;}e=e+(1)>>0;}c="value";i=b.Value;if($assertType(i,J,true)[1]){c="";}else if($assertType(i,BS,true)[1]){c="duration";}else if($assertType(i,BR,true)[1]){c="float";}else if($assertType(i,BM,true)[1]||$assertType(i,BN,true)[1]){c="int";}else if($assertType(i,BQ,true)[1]){c="string";}else if($assertType(i,BO,true)[1]||$assertType(i,BP,true)[1]){c="uint";}return[c,d];};$pkg.UnquoteUsage=AJ;AB.ptr.prototype.PrintDefaults=function(){var $ptr,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];b[0]=this;$r=b[0].VisitAll((function(b){return function $b(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=B.Sprintf(" -%s",new BK([new $String(c.Name)]));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=AJ(c);g=f[0];h=f[1];if(g.length>0){e=e+(" "+g);}if(e.length<=4){e=e+("\t");}else{e=e+("\n \t");}e=e+(h);if(!AI(c.DefValue)){$s=2;continue;}$s=3;continue;case 2:i=$assertType(c.Value,BQ,true);j=i[1];if(j){$s=4;continue;}$s=5;continue;case 4:k=B.Sprintf(" (default %q)",new BK([new $String(c.DefValue)]));$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}e=e+(k);$s=6;continue;case 5:l=B.Sprintf(" (default %v)",new BK([new $String(c.DefValue)]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}e=e+(l);case 6:case 3:m=B.Fprint(b[0].out(),new BK([new $String(e),new $String("\n")]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.PrintDefaults};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.PrintDefaults=function(){return this.$val.PrintDefaults();};AK=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=$pkg.CommandLine.PrintDefaults();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};$pkg.PrintDefaults=AK;AL=function(b){var $ptr,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(b.name===""){$s=1;continue;}$s=2;continue;case 1:c=B.Fprintf(b.out(),"Usage:\n",new BK([]));$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=3;continue;case 2:d=B.Fprintf(b.out(),"Usage of %s:\n",new BK([new $String(b.name)]));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;case 3:$r=b.PrintDefaults();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AB.ptr.prototype.NFlag=function(){var $ptr,b;b=this;return $keys(b.actual).length;};AB.prototype.NFlag=function(){return this.$val.NFlag();};AB.ptr.prototype.Arg=function(b){var $ptr,b,c,d;c=this;if(b<0||b>=c.args.$length){return"";}return(d=c.args,((b<0||b>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+b]));};AB.prototype.Arg=function(b){return this.$val.Arg(b);};AB.ptr.prototype.NArg=function(){var $ptr,b;b=this;return b.args.$length;};AB.prototype.NArg=function(){return this.$val.NArg();};AB.ptr.prototype.Args=function(){var $ptr,b;b=this;return b.args;};AB.prototype.Args=function(){return this.$val.Args();};AB.ptr.prototype.BoolVar=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(I(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.BoolVar};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.BoolVar=function(b,c,d,e){return this.$val.BoolVar(b,c,d,e);};AB.ptr.prototype.Bool=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(false,BW);$r=e.BoolVar(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Bool};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Bool=function(b,c,d){return this.$val.Bool(b,c,d);};AB.ptr.prototype.IntVar=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(L(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.IntVar};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.IntVar=function(b,c,d,e){return this.$val.IntVar(b,c,d,e);};AB.ptr.prototype.Int=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(0,BX);$r=e.IntVar(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Int};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Int=function(b,c,d){return this.$val.Int(b,c,d);};AB.ptr.prototype.Int64Var=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(N(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Int64Var};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Int64Var=function(b,c,d,e){return this.$val.Int64Var(b,c,d,e);};AB.ptr.prototype.Int64=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(new $Int64(0,0),BY);$r=e.Int64Var(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Int64};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Int64=function(b,c,d){return this.$val.Int64(b,c,d);};AB.ptr.prototype.UintVar=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(P(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.UintVar};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.UintVar=function(b,c,d,e){return this.$val.UintVar(b,c,d,e);};AB.ptr.prototype.Uint=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(0,BZ);$r=e.UintVar(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Uint};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Uint=function(b,c,d){return this.$val.Uint(b,c,d);};AB.ptr.prototype.Uint64Var=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(R(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Uint64Var};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Uint64Var=function(b,c,d,e){return this.$val.Uint64Var(b,c,d,e);};AB.ptr.prototype.Uint64=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(new $Uint64(0,0),CA);$r=e.Uint64Var(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Uint64};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Uint64=function(b,c,d){return this.$val.Uint64(b,c,d);};AB.ptr.prototype.StringVar=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(T(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.StringVar};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.StringVar=function(b,c,d,e){return this.$val.StringVar(b,c,d,e);};AB.ptr.prototype.String=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer("",CB);$r=e.StringVar(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.String};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.String=function(b,c,d){return this.$val.String(b,c,d);};BB=function(b,c,d){var $ptr,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;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:e=$pkg.CommandLine.String(b,c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=2;case 2:return e;}return;}if($f===undefined){$f={$blk:BB};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.String=BB;AB.ptr.prototype.Float64Var=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(V(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Float64Var};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Float64Var=function(b,c,d,e){return this.$val.Float64Var(b,c,d,e);};AB.ptr.prototype.Float64=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(0,CC);$r=e.Float64Var(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Float64};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Float64=function(b,c,d){return this.$val.Float64(b,c,d);};AB.ptr.prototype.DurationVar=function(b,c,d,e){var $ptr,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;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:f=this;$r=f.Var(X(d,b),c,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.DurationVar};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.DurationVar=function(b,c,d,e){return this.$val.DurationVar(b,c,d,e);};AB.ptr.prototype.Duration=function(b,c,d){var $ptr,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;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:e=this;f=$newDataPointer(new G.Duration(0,0),BT);$r=e.DurationVar(f,b,c,d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Duration};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Duration=function(b,c,d){return this.$val.Duration(b,c,d);};AB.ptr.prototype.Var=function(b,c,d){var $ptr,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=b.String();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=new AC.ptr(c,d,b,f);h=(i=e.formal[$String.keyFor(c)],i!==undefined?[i.v,true]:[BU.nil,false]);j=h[1];if(j){$s=2;continue;}$s=3;continue;case 2:k="";if(e.name===""){$s=4;continue;}$s=5;continue;case 4:l=B.Sprintf("flag redefined: %s",new BK([new $String(c)]));$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;$s=6;continue;case 5:m=B.Sprintf("%s flag redefined: %s",new BK([new $String(e.name),new $String(c)]));$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}k=m;case 6:n=B.Fprintln(e.out(),new BK([new $String(k)]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$panic(new $String(k));case 3:if(e.formal===false){e.formal={};}o=c;(e.formal||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:g};$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Var};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AB.prototype.Var=function(b,c,d){return this.$val.Var(b,c,d);};AB.ptr.prototype.failf=function(b,c){var $ptr,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;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:d=this;e=B.Errorf(b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=B.Fprintln(d.out(),new BK([f]));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$r=d.usage();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return f;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.failf};}$f.$ptr=$ptr;$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;};AB.prototype.failf=function(b,c){return this.$val.failf(b,c);};AB.ptr.prototype.usage=function(){var $ptr,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(b.Usage===$throwNilPointerError){$s=1;continue;}$s=2;continue;case 1:if(b===$pkg.CommandLine){$s=4;continue;}$s=5;continue;case 4:$r=$pkg.Usage();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 5:$r=AL(b);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:$r=b.Usage();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.usage};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.usage=function(){return this.$val.usage();};AB.ptr.prototype.parseOne=function(){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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;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;if(b.args.$length===0){return[false,$ifaceNil];}d=(c=b.args,(0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0]));if((d.length===0)||!((d.charCodeAt(0)===45))||(d.length===1)){return[false,$ifaceNil];}e=1;if(d.charCodeAt(1)===45){e=e+(1)>>0;if(d.length===2){b.args=$subslice(b.args,1);return[false,$ifaceNil];}}f=d.substring(e);if((f.length===0)||(f.charCodeAt(0)===45)||(f.charCodeAt(0)===61)){$s=1;continue;}$s=2;continue;case 1:g=b.failf("bad flag syntax: %s",new BK([new $String(d)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=4;case 4:return[false,g];case 2:b.args=$subslice(b.args,1);h=false;i="";j=1;while(true){if(!(j>0));h=true;f=f.substring(0,j);break;}j=j+(1)>>0;}k=b.formal;l=(m=k[$String.keyFor(f)],m!==undefined?[m.v,true]:[BU.nil,false]);n=l[0];o=l[1];if(!o){$s=5;continue;}$s=6;continue;case 5:if(f==="help"||f==="h"){$s=7;continue;}$s=8;continue;case 7:$r=b.usage();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return[false,$pkg.ErrHelp];case 8:p=b.failf("flag provided but not defined: -%s",new BK([new $String(f)]));$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=11;case 11:return[false,p];case 6:q=$assertType(n.Value,J,true);r=q[0];s=q[1];if(!(s)){t=false;$s=15;continue s;}u=r.IsBoolFlag();$s=16;case 16:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 15:if(t){$s=12;continue;}$s=13;continue;case 12:if(h){$s=17;continue;}$s=18;continue;case 17:v=r.Set(i);$s=20;case 20:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=21;continue;}$s=22;continue;case 21:x=b.failf("invalid boolean value %q for -%s: %v",new BK([new $String(i),new $String(f),w]));$s=23;case 23:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=24;case 24:return[false,x];case 22:$s=19;continue;case 18:y=r.Set("true");$s=25;case 25:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!($interfaceIsEqual(z,$ifaceNil))){$s=26;continue;}$s=27;continue;case 26:aa=b.failf("invalid boolean flag %s: %v",new BK([new $String(f),z]));$s=28;case 28:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=29;case 29:return[false,aa];case 27:case 19:$s=14;continue;case 13:if(!h&&b.args.$length>0){h=true;ab=(ac=b.args,(0>=ac.$length?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+0]));ad=$subslice(b.args,1);i=ab;b.args=ad;}if(!h){$s=30;continue;}$s=31;continue;case 30:ae=b.failf("flag needs an argument: -%s",new BK([new $String(f)]));$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=33;case 33:return[false,ae];case 31:af=n.Value.Set(i);$s=34;case 34:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;if(!($interfaceIsEqual(ag,$ifaceNil))){$s=35;continue;}$s=36;continue;case 35:ah=b.failf("invalid value %q for flag -%s: %v",new BK([new $String(i),new $String(f),ag]));$s=37;case 37:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=38;case 38:return[false,ah];case 36:case 14:if(b.actual===false){b.actual={};}ai=f;(b.actual||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ai)]={k:ai,v:n};return[true,$ifaceNil];}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.parseOne};}$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.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;};AB.prototype.parseOne=function(){return this.$val.parseOne();};AB.ptr.prototype.Parse=function(b){var $ptr,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;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:c=this;c.parsed=true;c.args=b;case 1:e=c.parseOne();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(f){$s=1;continue;}if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}h=c.errorHandling;if(h===0){return g;}else if(h===1){D.Exit(2);}else if(h===2){$panic(g);}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Parse};}$f.$ptr=$ptr;$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;};AB.prototype.Parse=function(b){return this.$val.Parse(b);};AB.ptr.prototype.Parsed=function(){var $ptr,b;b=this;return b.parsed;};AB.prototype.Parsed=function(){return this.$val.Parsed();};BH=function(){var $ptr,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$pkg.CommandLine.Parse($subslice(D.Args,1));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BH};}$f.$ptr=$ptr;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=BH;BJ=function(b,c){var $ptr,b,c,d;d=new AB.ptr($throwNilPointerError,b,false,false,false,CD.nil,c,$ifaceNil);return d;};$pkg.NewFlagSet=BJ;AB.ptr.prototype.Init=function(b,c){var $ptr,b,c,d;d=this;d.name=b;d.errorHandling=c;};AB.prototype.Init=function(b,c){return this.$val.Init(b,c);};BL.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsBoolFlag",name:"IsBoolFlag",pkg:"",typ:$funcType([],[$Bool],false)}];BM.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BN.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BP.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BQ.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BR.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.methods=[{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CF.methods=[{prop:"out",name:"out",pkg:"flag",typ:$funcType([],[C.Writer],false)},{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([C.Writer],[],false)},{prop:"VisitAll",name:"VisitAll",pkg:"",typ:$funcType([CE],[],false)},{prop:"Visit",name:"Visit",pkg:"",typ:$funcType([CE],[],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[BU],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$String],[$error],false)},{prop:"PrintDefaults",name:"PrintDefaults",pkg:"",typ:$funcType([],[],false)},{prop:"NFlag",name:"NFlag",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Arg",name:"Arg",pkg:"",typ:$funcType([$Int],[$String],false)},{prop:"NArg",name:"NArg",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Args",name:"Args",pkg:"",typ:$funcType([],[CD],false)},{prop:"BoolVar",name:"BoolVar",pkg:"",typ:$funcType([BW,$String,$Bool,$String],[],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([$String,$Bool,$String],[BW],false)},{prop:"IntVar",name:"IntVar",pkg:"",typ:$funcType([BX,$String,$Int,$String],[],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([$String,$Int,$String],[BX],false)},{prop:"Int64Var",name:"Int64Var",pkg:"",typ:$funcType([BY,$String,$Int64,$String],[],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([$String,$Int64,$String],[BY],false)},{prop:"UintVar",name:"UintVar",pkg:"",typ:$funcType([BZ,$String,$Uint,$String],[],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([$String,$Uint,$String],[BZ],false)},{prop:"Uint64Var",name:"Uint64Var",pkg:"",typ:$funcType([CA,$String,$Uint64,$String],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([$String,$Uint64,$String],[CA],false)},{prop:"StringVar",name:"StringVar",pkg:"",typ:$funcType([CB,$String,$String,$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([$String,$String,$String],[CB],false)},{prop:"Float64Var",name:"Float64Var",pkg:"",typ:$funcType([CC,$String,$Float64,$String],[],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([$String,$Float64,$String],[CC],false)},{prop:"DurationVar",name:"DurationVar",pkg:"",typ:$funcType([BT,$String,G.Duration,$String],[],false)},{prop:"Duration",name:"Duration",pkg:"",typ:$funcType([$String,G.Duration,$String],[BT],false)},{prop:"Var",name:"Var",pkg:"",typ:$funcType([Y,$String,$String],[],false)},{prop:"failf",name:"failf",pkg:"flag",typ:$funcType([$String,BK],[$error],true)},{prop:"usage",name:"usage",pkg:"flag",typ:$funcType([],[],false)},{prop:"parseOne",name:"parseOne",pkg:"flag",typ:$funcType([],[$Bool,$error],false)},{prop:"Parse",name:"Parse",pkg:"",typ:$funcType([CD],[$error],false)},{prop:"Parsed",name:"Parsed",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Init",name:"Init",pkg:"",typ:$funcType([$String,AA],[],false)}];J.init([{prop:"IsBoolFlag",name:"IsBoolFlag",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);Y.init([{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String],[$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AB.init([{prop:"Usage",name:"Usage",pkg:"",typ:CG,tag:""},{prop:"name",name:"name",pkg:"flag",typ:$String,tag:""},{prop:"parsed",name:"parsed",pkg:"flag",typ:$Bool,tag:""},{prop:"actual",name:"actual",pkg:"flag",typ:CH,tag:""},{prop:"formal",name:"formal",pkg:"flag",typ:CH,tag:""},{prop:"args",name:"args",pkg:"flag",typ:CD,tag:""},{prop:"errorHandling",name:"errorHandling",pkg:"flag",typ:AA,tag:""},{prop:"output",name:"output",pkg:"flag",typ:C.Writer,tag:""}]);AC.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"Usage",name:"Usage",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:Y,tag:""},{prop:"DefValue",name:"DefValue",pkg:"",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=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;}$pkg.ErrHelp=A.New("flag: help requested");$pkg.CommandLine=BJ((a=D.Args,(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0])),1);$pkg.Usage=(function $b(){var $ptr,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=B.Fprintf(D.Stderr,"Usage of %s:\n",new BK([new $String((b=D.Args,(0>=b.$length?$throwRuntimeError("index out of range"):b.$array[b.$offset+0])))]));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$r=AK();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;});}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F,O,AR,AU,P,R,U,AJ,AN;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];O=$pkg.lazybuf=$newType(0,$kindStruct,"filepath.lazybuf","lazybuf","path/filepath",function(path_,buf_,w_,volAndPath_,volLen_){this.$val=this;if(arguments.length===0){this.path="";this.buf=AR.nil;this.w=0;this.volAndPath="";this.volLen=0;return;}this.path=path_;this.buf=buf_;this.w=w_;this.volAndPath=volAndPath_;this.volLen=volLen_;});AR=$sliceType($Uint8);AU=$ptrType(O);O.ptr.prototype.index=function(a){var $ptr,a,b,c;b=this;if(!(b.buf===AR.nil)){return(c=b.buf,((a<0||a>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+a]));}return b.path.charCodeAt(a);};O.prototype.index=function(a){return this.$val.index(a);};O.ptr.prototype.append=function(a){var $ptr,a,b,c,d;b=this;if(b.buf===AR.nil){if(b.w>0;return;}b.buf=$makeSlice(AR,b.path.length);$copyString(b.buf,b.path.substring(0,b.w));}(c=b.buf,d=b.w,((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=a));b.w=b.w+(1)>>0;};O.prototype.append=function(a){return this.$val.append(a);};O.ptr.prototype.string=function(){var $ptr,a;a=this;if(a.buf===AR.nil){return a.volAndPath.substring(0,(a.volLen+a.w>>0));}return a.volAndPath.substring(0,a.volLen)+$bytesToString($subslice(a.buf,0,a.w));};O.prototype.string=function(){return this.$val.string();};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=a;c=AJ(a);a=a.substring(c);if(a===""){if(c>1&&!((b.charCodeAt(1)===58))){return R(b);}return b+".";}d=B.IsPathSeparator(a.charCodeAt(0));e=a.length;f=new O.ptr(a,AR.nil,0,b,c);g=0;h=0;i=g;j=h;if(d){f.append(47);k=1;l=1;i=k;j=l;}while(true){if(!(i>0;}else if((a.charCodeAt(i)===46)&&(((i+1>>0)===e)||B.IsPathSeparator(a.charCodeAt((i+1>>0))))){i=i+(1)>>0;}else if((a.charCodeAt(i)===46)&&(a.charCodeAt((i+1>>0))===46)&&(((i+2>>0)===e)||B.IsPathSeparator(a.charCodeAt((i+2>>0))))){i=i+(2)>>0;if(f.w>j){f.w=f.w-(1)>>0;while(true){if(!(f.w>j&&!B.IsPathSeparator(f.index(f.w)))){break;}f.w=f.w-(1)>>0;}}else if(!d){if(f.w>0){f.append(47);}f.append(46);f.append(46);j=f.w;}}else{if(d&&!((f.w===1))||!d&&!((f.w===0))){f.append(47);}while(true){if(!(i>0;}}}if(f.w===0){f.append(46);}return R(f.string());};$pkg.Clean=P;R=function(a){var $ptr,a;return a;return E.Replace(a,"/","/",-1);};$pkg.FromSlash=R;U=function(a){var $ptr,a;return AN(a);};$pkg.Join=U;AJ=function(a){var $ptr,a;return 0;};AN=function(a){var $ptr,a,b,c,d,e;b=a;c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);if(!(e==="")){return P(E.Join($subslice(a,d),"/"));}c++;}return"";};AU.methods=[{prop:"index",name:"index",pkg:"path/filepath",typ:$funcType([$Int],[$Uint8],false)},{prop:"append",name:"append",pkg:"path/filepath",typ:$funcType([$Uint8],[],false)},{prop:"string",name:"string",pkg:"path/filepath",typ:$funcType([],[$String],false)}];O.init([{prop:"path",name:"path",pkg:"path/filepath",typ:$String,tag:""},{prop:"buf",name:"buf",pkg:"path/filepath",typ:AR,tag:""},{prop:"w",name:"w",pkg:"path/filepath",typ:$Int,tag:""},{prop:"volAndPath",name:"volAndPath",pkg:"path/filepath",typ:$String,tag:""},{prop:"volLen",name:"volLen",pkg:"path/filepath",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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AM,AO,AQ,AT;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AM=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new AL.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewCMYK=AM;AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};AT=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=0;j=0;k=g;l=h;m=i;n=j;o=f;if(o===1){m=(p=((e.Max.X+1>>0))/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))-(q=e.Min.X/2,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===2){m=(r=((e.Max.X+1>>0))/2,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))-(s=e.Min.X/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(t=((e.Max.Y+1>>0))/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))-(u=e.Min.Y/2,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===3){m=k;n=(v=((e.Max.Y+1>>0))/2,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))-(w=e.Min.Y/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===4){m=(x=((e.Max.X+3>>0))/4,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))-(y=e.Min.X/4,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===5){m=(z=((e.Max.X+3>>0))/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))-(aa=e.Min.X/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(ab=((e.Max.Y+1>>0))/2,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero"))-(ac=e.Min.Y/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;}else{m=k;n=l;}ad=($imul(k,l))+($imul(($imul(0,m)),n))>>0;ae=($imul(k,l))+($imul(($imul(1,m)),n))>>0;af=($imul(k,l))+($imul(($imul(2,m)),n))>>0;ag=$makeSlice(AV,af);return new AS.ptr($subslice(ag,0,ad,ad),$subslice(ag,ad,ae,ae),$subslice(ag,ae,af,af),k,m,f,$clone(e,Q));};$pkg.NewYCbCr=AT;O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,E,H,I,J,K,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);E=function(a){var $ptr,a,b;return(b=L.keyPressed,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a]));};$pkg.IsKeyPressed=E;H=function(a){var $ptr,a,b;if(16<=a){return 0;}return(b=L.gamepads,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a])).axisNum;};$pkg.GamepadAxisNum=H;I=function(a,b){var $ptr,a,b,c,d;if(16<=a){return 0;}return(c=(d=L.gamepads,((a<0||a>=d.length)?$throwRuntimeError("index out of range"):d[a])).axes,((b<0||b>=c.length)?$throwRuntimeError("index out of range"):c[b]));};$pkg.GamepadAxis=I;J=function(a){var $ptr,a,b;if(16<=a){return 0;}return(b=L.gamepads,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a])).buttonNum;};$pkg.GamepadButtonNum=J;K=function(a,b){var $ptr,a,b,c,d;if(16<=a){return false;}return(c=(d=L.gamepads,((a<0||a>=d.length)?$throwRuntimeError("index out of range"):d[a])).buttonPressed,((b<0||b>=c.length)?$throwRuntimeError("index out of range"):c[b]));};$pkg.IsGamepadButtonPressed=K;M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,U,V,AD,AE,AF,AI,AJ,AK,AL,AO,AY,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,Q,AA,AB,AC,AG,AH,AM,AN,AQ,AR,AU,AV,AW,AX,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});U=$pkg.GamepadButton=$newType(4,$kindInt,"ebiten.GamepadButton","GamepadButton","github.com/hajimehoshi/ebiten",null);V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});AY=$pkg.Key=$newType(4,$kindInt,"ebiten.Key","Key","github.com/hajimehoshi/ebiten",null);BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};Q=function(){var $ptr;return new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[0.212646484375,0.71514892578125,0.07220458984375,0,0]),$toNativeArray($kindFloat64,[0.212646484375,0.71514892578125,0.07220458984375,0,0]),$toNativeArray($kindFloat64,[0.212646484375,0.71514892578125,0.07220458984375,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])]));};$pkg.Monochrome=Q;V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AG=function(a,b,c){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];e=[e];e[0]=BL.nil;d[0]=$ifaceNil;$r=AB((function(a,b,c,d,e){return function $b(f){var $ptr,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;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=BP.nil;h=BO.nil;i=D.NewTexture(f,a[0],b[0],AA(f,c[0]));g=i[0];d[0]=i[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(f,g);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;h=j[0];d[0]=j[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}e[0]=new AE.ptr(h,g,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(d[0],$ifaceNil))){return[BL.nil,d[0]];}f=e[0].Clear();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return[BL.nil,g];case 4:I.SetFinalizer(e[0],new BT($methodExpr(BL,"Dispose")));return[e[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AG};}$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.NewImage=AG;AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AR=function(a){var $ptr,a;return B.IsKeyPressed((a>>0));};$pkg.IsKeyPressed=AR;AU=function(a){var $ptr,a;return B.GamepadAxisNum(a);};$pkg.GamepadAxisNum=AU;AV=function(a,b){var $ptr,a,b;return B.GamepadAxis(a,b);};$pkg.GamepadAxis=AV;AW=function(a){var $ptr,a;return B.GamepadButtonNum(a);};$pkg.GamepadButtonNum=AW;AX=function(a,b){var $ptr,a,b;return B.IsGamepadButtonPressed(a,(b>>0));};$pkg.IsGamepadButtonPressed=AX;BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/common"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,J,K,L,M,N,O,P,Q,R,S,I;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/color"];D=$packages["math"];E=$packages["path/filepath"];F=$packages["runtime"];G=$packages["strings"];H=$pkg.Font=$newType(0,$kindStruct,"common.Font","Font","github.com/hajimehoshi/ebiten/examples/common",function(image_,offset_,charNumPerLine_,charWidth_,charHeight_){this.$val=this;if(arguments.length===0){this.image=R.nil;this.offset=0;this.charNumPerLine=0;this.charWidth=0;this.charHeight=0;return;}this.image=image_;this.offset=offset_;this.charNumPerLine=charNumPerLine_;this.charWidth=charWidth_;this.charHeight=charHeight_;});J=$pkg.fontImageParts=$newType(0,$kindStruct,"common.fontImageParts","fontImageParts","github.com/hajimehoshi/ebiten/examples/common",function(str_,font_){this.$val=this;if(arguments.length===0){this.str="";this.font=K.nil;return;}this.str=str_;this.font=font_;});K=$ptrType(H);L=$sliceType($String);M=$arrayType($Float64,3);N=$arrayType(M,2);O=$arrayType($Float64,5);P=$arrayType(O,4);Q=$sliceType(A.ImagePart);R=$ptrType(A.Image);S=$ptrType(J);H.ptr.prototype.TextWidth=function(a){var $ptr,a,b;b=this;return $imul(b.charWidth,a.length);};H.prototype.TextWidth=function(a){return this.$val.TextWidth(a);};I=function(){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="";b=E.Join(new L([a,"images","arcadefont.png"]));d=B.NewImageFromFile(b,0);$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[2];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$pkg.ArcadeFont=new H.ptr(e,32,16,8,8);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$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;};J.ptr.prototype.Len=function(){var $ptr,a;a=this;return a.str.length;};J.prototype.Len=function(){return this.$val.Len();};J.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=0;c=0;d=0;e=0;f=this;g=(a-G.LastIndex(f.str.substring(0,a),"\n")>>0)-1>>0;h=G.Count(f.str.substring(0,a),"\n");g=$imul(g,(f.font.charWidth));h=$imul(h,(f.font.charHeight));if(g<0){i=0;j=0;k=0;l=0;b=i;c=j;d=k;e=l;return[b,c,d,e];}m=g;n=h;o=g+f.font.charWidth>>0;p=h+f.font.charHeight>>0;b=m;c=n;d=o;e=p;return[b,c,d,e];};J.prototype.Dst=function(a){return this.$val.Dst(a);};J.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=0;c=0;d=0;e=0;f=this;g=(f.str.charCodeAt(a)>>0);if(g===10){h=0;i=0;j=0;k=0;b=h;c=i;d=j;e=k;return[b,c,d,e];}m=$imul(((l=g%f.font.charNumPerLine,l===l?l:$throwRuntimeError("integer divide by zero"))),f.font.charWidth);o=$imul(((n=((g-f.font.offset>>0))/f.font.charNumPerLine,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))),f.font.charHeight);p=m;q=o;r=m+f.font.charWidth>>0;s=o+f.font.charHeight>>0;b=p;c=q;d=r;e=s;return[b,c,d,e];};J.prototype.Src=function(a){return this.$val.Src(a);};H.ptr.prototype.DrawText=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,$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:g=this;h=new A.DrawImageOptions.ptr(new J.ptr(b,g),new A.GeoM.ptr(false,N.zero()),new A.ColorM.ptr(false,P.zero()),Q.nil);h.GeoM.Scale(e,e);h.GeoM.Translate(c,d);j=f.RGBA();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=i[2];n=i[3];o=k/65535;p=l/65535;q=m/65535;r=n/65535;if(0>0,d+1>>0,e,(h=new C.NRGBA.ptr(0,0,0,128),new h.constructor.elem(h)));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return j;case 3:k=g.DrawText(a,b,c,d,e,f);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return l;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.DrawTextWithShadow};}$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;};H.prototype.DrawTextWithShadow=function(a,b,c,d,e,f){return this.$val.DrawTextWithShadow(a,b,c,d,e,f);};K.methods=[{prop:"TextWidth",name:"TextWidth",pkg:"",typ:$funcType([$String],[$Int],false)},{prop:"DrawText",name:"DrawText",pkg:"",typ:$funcType([R,$String,$Int,$Int,$Int,C.Color],[$error],false)},{prop:"DrawTextWithShadow",name:"DrawTextWithShadow",pkg:"",typ:$funcType([R,$String,$Int,$Int,$Int,C.Color],[$error],false)}];S.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];H.init([{prop:"image",name:"image",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:R,tag:""},{prop:"offset",name:"offset",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charNumPerLine",name:"charNumPerLine",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charWidth",name:"charWidth",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charHeight",name:"charHeight",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""}]);J.init([{prop:"str",name:"str",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$String,tag:""},{prop:"font",name:"font",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:K,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;}$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;}$pkg.ArcadeFont=K.nil;$r=I();$s=8;case 8: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["github.com/hajimehoshi/ebiten/exp/gamepad"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L;A=$packages["fmt"];B=$packages["github.com/hajimehoshi/ebiten"];C=$pkg.StdButton=$newType(4,$kindInt,"gamepad.StdButton","StdButton","github.com/hajimehoshi/ebiten/exp/gamepad",null);D=$pkg.axis=$newType(0,$kindStruct,"gamepad.axis","axis","github.com/hajimehoshi/ebiten/exp/gamepad",function(id_,positive_){this.$val=this;if(arguments.length===0){this.id=0;this.positive=false;return;}this.id=id_;this.positive=positive_;});E=$pkg.Configuration=$newType(0,$kindStruct,"gamepad.Configuration","Configuration","github.com/hajimehoshi/ebiten/exp/gamepad",function(current_,buttons_,axes_,assignedButtons_,assignedAxes_){this.$val=this;if(arguments.length===0){this.current=0;this.buttons=false;this.axes=false;this.assignedButtons=false;this.assignedAxes=false;return;}this.current=current_;this.buttons=buttons_;this.axes=axes_;this.assignedButtons=assignedButtons_;this.assignedAxes=assignedAxes_;});F=$structType([]);G=$sliceType($emptyInterface);H=$ptrType(E);I=$mapType(C,B.GamepadButton);J=$mapType(C,D);K=$mapType(B.GamepadButton,F);L=$mapType(D,F);E.ptr.prototype.initializeIfNeeded=function(){var $ptr,a;a=this;if(a.buttons===false){a.buttons=$makeMap(C.keyFor,[]);}if(a.axes===false){a.axes=$makeMap(C.keyFor,[]);}if(a.assignedButtons===false){a.assignedButtons=$makeMap(B.GamepadButton.keyFor,[]);}if(a.assignedAxes===false){a.assignedAxes=$makeMap(D.keyFor,[]);}};E.prototype.initializeIfNeeded=function(){return this.$val.initializeIfNeeded();};E.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.buttons=false;a.axes=false;a.assignedButtons=false;a.assignedAxes=false;};E.prototype.Reset=function(){return this.$val.Reset();};E.ptr.prototype.Scan=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=this;c.initializeIfNeeded();delete c.buttons[C.keyFor(b)];delete c.axes[C.keyFor(b)];d=(B.GamepadButtonNum(a)>>0);e=0;while(true){if(!(e>0;continue;}if(B.IsGamepadButtonPressed(a,e)){i=b;(c.buttons||$throwRuntimeError("assignment to entry in nil map"))[C.keyFor(i)]={k:i,v:e};j=e;(c.assignedButtons||$throwRuntimeError("assignment to entry in nil map"))[B.GamepadButton.keyFor(j)]={k:j,v:new F.ptr()};return true;}e=e+(1)>>0;}k=B.GamepadAxisNum(a);l=0;while(true){if(!(l>0;}return false;};E.prototype.Scan=function(a,b){return this.$val.Scan(a,b);};E.ptr.prototype.IsButtonPressed=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;c.initializeIfNeeded();d=(e=c.buttons[C.keyFor(b)],e!==undefined?[e.v,true]:[0,false]);f=d[0];g=d[1];if(g){return B.IsGamepadButtonPressed(0,f);}h=(i=c.axes[C.keyFor(b)],i!==undefined?[i.v,true]:[new D.ptr(0,false),false]);j=$clone(h[0],D);g=h[1];if(g){k=B.GamepadAxis(0,j.id);if(j.positive){return 0.75<=k&&k<=1;}else{return-1<=k&&k<=-0.75;}}return false;};E.prototype.IsButtonPressed=function(a,b){return this.$val.IsButtonPressed(a,b);};E.ptr.prototype.Name=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;b.initializeIfNeeded();c=(d=b.buttons[C.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=A.Sprintf("Button %d",new G([new B.GamepadButton(e)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=4;case 4:return g;case 2:h=(i=b.axes[C.keyFor(a)],i!==undefined?[i.v,true]:[new D.ptr(0,false),false]);j=$clone(h[0],D);f=h[1];if(f){$s=5;continue;}$s=6;continue;case 5:if(j.positive){$s=7;continue;}$s=8;continue;case 7:k=A.Sprintf("Axis %d+",new G([new $Int(j.id)]));$s=10;case 10:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=11;case 11:return k;case 8:l=A.Sprintf("Axis %d-",new G([new $Int(j.id)]));$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=13;case 13:return l;case 9:case 6:return"";}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Name};}$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;};E.prototype.Name=function(a){return this.$val.Name(a);};H.methods=[{prop:"initializeIfNeeded",name:"initializeIfNeeded",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:$funcType([],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([$Int,C],[$Bool],false)},{prop:"IsButtonPressed",name:"IsButtonPressed",pkg:"",typ:$funcType([$Int,C],[$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([C],[$String],false)}];D.init([{prop:"id",name:"id",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:$Int,tag:""},{prop:"positive",name:"positive",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:$Bool,tag:""}]);E.init([{prop:"current",name:"current",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:C,tag:""},{prop:"buttons",name:"buttons",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:I,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:J,tag:""},{prop:"assignedButtons",name:"assignedButtons",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:K,tag:""},{prop:"assignedAxes",name:"assignedAxes",pkg:"github.com/hajimehoshi/ebiten/exp/gamepad",typ:L,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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/jpeg"]=(function(){var $pkg={},$init,E,F,B,C,D,A,H,J,L,M,O,R,S,AD,AF,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BW,BX,BY,I,N,P,T,AE,AG,K,U,V,W,AH;E=$packages["bufio"];F=$packages["errors"];B=$packages["image"];C=$packages["image/color"];D=$packages["image/internal/imageutil"];A=$packages["io"];H=$pkg.huffman=$newType(0,$kindStruct,"jpeg.huffman","huffman","image/jpeg",function(nCodes_,lut_,vals_,minCodes_,maxCodes_,valsIndices_){this.$val=this;if(arguments.length===0){this.nCodes=0;this.lut=BF.zero();this.vals=BG.zero();this.minCodes=AW.zero();this.maxCodes=AW.zero();this.valsIndices=AW.zero();return;}this.nCodes=nCodes_;this.lut=lut_;this.vals=vals_;this.minCodes=minCodes_;this.maxCodes=maxCodes_;this.valsIndices=valsIndices_;});J=$pkg.block=$newType(256,$kindArray,"jpeg.block","block","image/jpeg",null);L=$pkg.FormatError=$newType(8,$kindString,"jpeg.FormatError","FormatError","image/jpeg",null);M=$pkg.UnsupportedError=$newType(8,$kindString,"jpeg.UnsupportedError","UnsupportedError","image/jpeg",null);O=$pkg.component=$newType(0,$kindStruct,"jpeg.component","component","image/jpeg",function(h_,v_,c_,tq_){this.$val=this;if(arguments.length===0){this.h=0;this.v=0;this.c=0;this.tq=0;return;}this.h=h_;this.v=v_;this.c=c_;this.tq=tq_;});R=$pkg.bits=$newType(0,$kindStruct,"jpeg.bits","bits","image/jpeg",function(a_,m_,n_){this.$val=this;if(arguments.length===0){this.a=0;this.m=0;this.n=0;return;}this.a=a_;this.m=m_;this.n=n_;});S=$pkg.decoder=$newType(0,$kindStruct,"jpeg.decoder","decoder","image/jpeg",function(r_,bits_,bytes_,width_,height_,img1_,img3_,blackPix_,blackStride_,ri_,nComp_,progressive_,jfif_,adobeTransformValid_,adobeTransform_,eobRun_,comp_,progCoeffs_,huff_,quant_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=new R.ptr(0,0,0);this.bytes=new BB.ptr(BA.zero(),0,0,0);this.width=0;this.height=0;this.img1=AX.nil;this.img3=AY.nil;this.blackPix=AV.nil;this.blackStride=0;this.ri=0;this.nComp=0;this.progressive=false;this.jfif=false;this.adobeTransformValid=false;this.adobeTransform=0;this.eobRun=0;this.comp=BC.zero();this.progCoeffs=BE.zero();this.huff=BI.zero();this.quant=BK.zero();this.tmp=BL.zero();return;}this.r=r_;this.bits=bits_;this.bytes=bytes_;this.width=width_;this.height=height_;this.img1=img1_;this.img3=img3_;this.blackPix=blackPix_;this.blackStride=blackStride_;this.ri=ri_;this.nComp=nComp_;this.progressive=progressive_;this.jfif=jfif_;this.adobeTransformValid=adobeTransformValid_;this.adobeTransform=adobeTransform_;this.eobRun=eobRun_;this.comp=comp_;this.progCoeffs=progCoeffs_;this.huff=huff_;this.quant=quant_;this.tmp=tmp_;});AD=$pkg.huffmanSpec=$newType(0,$kindStruct,"jpeg.huffmanSpec","huffmanSpec","image/jpeg",function(count_,value_){this.$val=this;if(arguments.length===0){this.count=AU.zero();this.value=AV.nil;return;}this.count=count_;this.value=value_;});AF=$pkg.huffmanLUT=$newType(12,$kindSlice,"jpeg.huffmanLUT","huffmanLUT","image/jpeg",null);AS=$arrayType(AF,4);AU=$arrayType($Uint8,16);AV=$sliceType($Uint8);AW=$arrayType($Int32,16);AX=$ptrType(B.Gray);AY=$ptrType(B.YCbCr);AZ=$structType([{prop:"src",name:"src",pkg:"image/jpeg",typ:AV,tag:""},{prop:"stride",name:"stride",pkg:"image/jpeg",typ:$Int,tag:""}]);BA=$arrayType($Uint8,4096);BB=$structType([{prop:"buf",name:"buf",pkg:"image/jpeg",typ:BA,tag:""},{prop:"i",name:"i",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"j",name:"j",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nUnreadable",name:"nUnreadable",pkg:"image/jpeg",typ:$Int,tag:""}]);BC=$arrayType(O,4);BD=$sliceType(J);BE=$arrayType(BD,4);BF=$arrayType($Uint16,256);BG=$arrayType($Uint8,256);BH=$arrayType(H,4);BI=$arrayType(BH,2);BJ=$arrayType($Int32,64);BK=$arrayType(J,4);BL=$arrayType($Uint8,128);BM=$structType([{prop:"compIndex",name:"compIndex",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"td",name:"td",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"ta",name:"ta",pkg:"image/jpeg",typ:$Uint8,tag:""}]);BN=$arrayType(BM,4);BO=$sliceType(O);BP=$arrayType($Int32,4);BQ=$sliceType($Uint32);BR=$ptrType(AF);BW=$ptrType(H);BX=$ptrType(J);BY=$ptrType(S);S.ptr.prototype.ensureNBits=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;case 1:d=b.readByteStuffedByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){if($interfaceIsEqual(f,A.EOF)){return new L(I);}return f;}b.bits.a=((b.bits.a<<8>>>0)|(e>>>0))>>>0;b.bits.n=b.bits.n+(8)>>0;if(b.bits.m===0){b.bits.m=128;}else{b.bits.m=(g=(8),g<32?(b.bits.m<>>0;}if(b.bits.n>=a){$s=2;continue;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ensureNBits};}$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;};S.prototype.ensureNBits=function(a){return this.$val.ensureNBits(a);};S.ptr.prototype.receiveExtend=function(a){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:b=this;if(b.bits.n<(a>>0)){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:case 2:b.bits.n=b.bits.n-((a>>0))>>0;b.bits.m=(e=(a),e<32?(b.bits.m>>>e):0)>>>0;g=(f=a,f<32?(1<>0;i=(((h=(b.bits.n<<24>>>24),h<32?(b.bits.a>>>h):0)>>>0)>>0)&((g-1>>0));if(i<(g>>1>>0)){i=i+(((((j=a,j<32?(-1<>0))+1>>0))>>0;}return[i,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.receiveExtend};}$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;};S.prototype.receiveExtend=function(a){return this.$val.receiveExtend(a);};S.ptr.prototype.processDHT=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,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;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;case 1:if(!(a>0)){$s=2;continue;}if(a<17){return new L("DHT has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,17));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return d;case 5:e=b.tmp[0]>>>4<<24>>>24;if(e>1){return new L("bad Tc value");}f=(b.tmp[0]&15)>>>0;if(f>3||!b.progressive&&f>1){return new L("bad Th value");}i=(g=(h=b.huff,((e<0||e>=h.length)?$throwRuntimeError("index out of range"):h[e])),((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]));i.nCodes=0;j=AW.zero();k=j;l=0;while(true){if(!(l<16)){break;}m=l;((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]=((n=b.tmp,o=m+1>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]))>>0));i.nCodes=i.nCodes+(((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]))>>0;l++;}if(i.nCodes===0){return new L("Huffman table has zero length");}if(i.nCodes>256){return new L("Huffman table has excessive length");}a=a-(((i.nCodes>>0)+17>>0))>>0;if(a<0){return new L("DHT has wrong length");}p=b.readFull($subslice(new AV(i.vals),0,i.nCodes));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return q;case 8:r=i.lut;s=0;while(true){if(!(s<256)){break;}t=s;(u=i.lut,((t<0||t>=u.length)?$throwRuntimeError("index out of range"):u[t]=0));s++;}v=0;w=0;x=v;y=w;z=0;while(true){if(!(z<8)){break;}y=(aa=(1),aa<32?(y<>>0;ab=0;while(true){if(!(ab<((z<0||z>=j.length)?$throwRuntimeError("index out of range"):j[z]))){break;}ad=(((ac=((7-z>>>0)),ac<32?(y<>>0)<<24>>>24);af=((((ae=i.vals,((x<0||x>=ae.length)?$throwRuntimeError("index out of range"):ae[x]))<<16>>>16)<<8<<16>>>16)|((2+z>>>0)<<16>>>16))>>>0;ag=0;while(true){if(!(ag<((ah=((7-z>>>0)),ah<32?(1<>>24))){break;}(ai=i.lut,aj=(ad|ag)>>>0,((aj<0||aj>=ai.length)?$throwRuntimeError("index out of range"):ai[aj]=af));ag=ag+(1)<<24>>>24;}y=y+(1)>>>0;x=x+(1)>>>0;ab=ab+(1)>>0;}z=z+(1)>>>0;}ak=0;al=0;am=ak;an=al;ao=j;ap=0;while(true){if(!(ap<16)){break;}aq=ap;ar=((ap<0||ap>=ao.length)?$throwRuntimeError("index out of range"):ao[ap]);if(ar===0){(as=i.minCodes,((aq<0||aq>=as.length)?$throwRuntimeError("index out of range"):as[aq]=-1));(at=i.maxCodes,((aq<0||aq>=at.length)?$throwRuntimeError("index out of range"):at[aq]=-1));(au=i.valsIndices,((aq<0||aq>=au.length)?$throwRuntimeError("index out of range"):au[aq]=-1));}else{(av=i.minCodes,((aq<0||aq>=av.length)?$throwRuntimeError("index out of range"):av[aq]=am));(aw=i.maxCodes,((aq<0||aq>=aw.length)?$throwRuntimeError("index out of range"):aw[aq]=((am+ar>>0)-1>>0)));(ax=i.valsIndices,((aq<0||aq>=ax.length)?$throwRuntimeError("index out of range"):ax[aq]=an));am=am+(ar)>>0;an=an+(ar)>>0;}am=(ay=(1),ay<32?(am<>0;ap++;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDHT};}$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.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.processDHT=function(a){return this.$val.processDHT(a);};S.ptr.prototype.decodeHuffman=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a.nCodes===0){return[0,new L("uninitialized Huffman table")];}if(b.bits.n<8){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits(8);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(d,new L(T)))&&!($interfaceIsEqual(d,new L(I)))){return[0,d];}if(!((b.bytes.nUnreadable===0))){b.unreadByteStuffedByte();}$s=6;continue;case 5:case 2:h=(e=a.lut,f=((((g=((b.bits.n-8>>0)>>>0),g<32?(b.bits.a>>>g):0)>>>0))&255)>>>0,((f<0||f>=e.length)?$throwRuntimeError("index out of range"):e[f]));if(!((h===0))){i=(((h&255)>>>0))-1<<16>>>16;b.bits.n=b.bits.n-((i>>0))>>0;b.bits.m=(j=(i),j<32?(b.bits.m>>>j):0)>>>0;return[((h>>>8<<16>>>16)<<24>>>24),$ifaceNil];}case 6:k=0;l=0;m=k;n=l;case 7:if(!(m<16)){$s=8;continue;}if(b.bits.n===0){$s=9;continue;}$s=10;continue;case 9:o=b.ensureNBits(1);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return[0,p];case 13:case 10:if(!((((b.bits.a&b.bits.m)>>>0)===0))){n=n|(1);}b.bits.n=b.bits.n-(1)>>0;b.bits.m=(q=(1),q<32?(b.bits.m>>>q):0)>>>0;if(n<=(r=a.maxCodes,((m<0||m>=r.length)?$throwRuntimeError("index out of range"):r[m]))){return[(s=a.vals,t=((u=a.valsIndices,((m<0||m>=u.length)?$throwRuntimeError("index out of range"):u[m]))+n>>0)-(v=a.minCodes,((m<0||m>=v.length)?$throwRuntimeError("index out of range"):v[m]))>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),$ifaceNil];}n=(w=(1),w<32?(n<>0;m=m+(1)>>0;$s=7;continue;case 8:return[0,new L("bad Huffman code")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeHuffman};}$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.$s=$s;$f.$r=$r;return $f;};S.prototype.decodeHuffman=function(a){return this.$val.decodeHuffman(a);};S.ptr.prototype.decodeBit=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.bits.n===0){$s=1;continue;}$s=2;continue;case 1:b=a.ensureNBits(1);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[false,c];case 5:case 2:d=!((((a.bits.a&a.bits.m)>>>0)===0));a.bits.n=a.bits.n-(1)>>0;a.bits.m=(e=(1),e<32?(a.bits.m>>>e):0)>>>0;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBit};}$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;};S.prototype.decodeBit=function(){return this.$val.decodeBit();};S.ptr.prototype.decodeBits=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;if(b.bits.n>0)>>>0),e<32?(b.bits.a>>>e):0)>>>0;f=(f&(((((g=(a>>>0),g<32?(1<>>0))-1>>>0)))>>>0;b.bits.n=b.bits.n-(a)>>0;b.bits.m=(h=((a>>>0)),h<32?(b.bits.m>>>h):0)>>>0;return[f,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBits};}$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;};S.prototype.decodeBits=function(a){return this.$val.decodeBits(a);};K=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,bq,br,bs,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;while(true){if(!(b<8)){break;}c=$imul(b,8);if(((d=c+1>>0,(a.nilCheck,((d<0||d>=a.length)?$throwRuntimeError("index out of range"):a[d])))===0)&&((e=c+2>>0,(a.nilCheck,((e<0||e>=a.length)?$throwRuntimeError("index out of range"):a[e])))===0)&&((f=c+3>>0,(a.nilCheck,((f<0||f>=a.length)?$throwRuntimeError("index out of range"):a[f])))===0)&&((g=c+4>>0,(a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g])))===0)&&((h=c+5>>0,(a.nilCheck,((h<0||h>=a.length)?$throwRuntimeError("index out of range"):a[h])))===0)&&((i=c+6>>0,(a.nilCheck,((i<0||i>=a.length)?$throwRuntimeError("index out of range"):a[i])))===0)&&((j=c+7>>0,(a.nilCheck,((j<0||j>=a.length)?$throwRuntimeError("index out of range"):a[j])))===0)){l=(k=c+0>>0,(a.nilCheck,((k<0||k>=a.length)?$throwRuntimeError("index out of range"):a[k])))<<3>>0;(m=c+0>>0,a.nilCheck,((m<0||m>=a.length)?$throwRuntimeError("index out of range"):a[m]=l));(n=c+1>>0,a.nilCheck,((n<0||n>=a.length)?$throwRuntimeError("index out of range"):a[n]=l));(o=c+2>>0,a.nilCheck,((o<0||o>=a.length)?$throwRuntimeError("index out of range"):a[o]=l));(p=c+3>>0,a.nilCheck,((p<0||p>=a.length)?$throwRuntimeError("index out of range"):a[p]=l));(q=c+4>>0,a.nilCheck,((q<0||q>=a.length)?$throwRuntimeError("index out of range"):a[q]=l));(r=c+5>>0,a.nilCheck,((r<0||r>=a.length)?$throwRuntimeError("index out of range"):a[r]=l));(s=c+6>>0,a.nilCheck,((s<0||s>=a.length)?$throwRuntimeError("index out of range"):a[s]=l));(t=c+7>>0,a.nilCheck,((t<0||t>=a.length)?$throwRuntimeError("index out of range"):a[t]=l));b=b+(1)>>0;continue;}v=(((u=c+0>>0,(a.nilCheck,((u<0||u>=a.length)?$throwRuntimeError("index out of range"):a[u])))<<11>>0))+128>>0;x=(w=c+4>>0,(a.nilCheck,((w<0||w>=a.length)?$throwRuntimeError("index out of range"):a[w])))<<11>>0;z=(y=c+6>>0,(a.nilCheck,((y<0||y>=a.length)?$throwRuntimeError("index out of range"):a[y])));ab=(aa=c+2>>0,(a.nilCheck,((aa<0||aa>=a.length)?$throwRuntimeError("index out of range"):a[aa])));ad=(ac=c+1>>0,(a.nilCheck,((ac<0||ac>=a.length)?$throwRuntimeError("index out of range"):a[ac])));af=(ae=c+7>>0,(a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae])));ah=(ag=c+5>>0,(a.nilCheck,((ag<0||ag>=a.length)?$throwRuntimeError("index out of range"):a[ag])));aj=(ai=c+3>>0,(a.nilCheck,((ai<0||ai>=a.length)?$throwRuntimeError("index out of range"):a[ai])));ak=$imul(565,((ad+af>>0)));ad=ak+($imul(2276,ad))>>0;af=ak-($imul(3406,af))>>0;ak=$imul(2408,((ah+aj>>0)));ah=ak-($imul(799,ah))>>0;aj=ak-($imul(4017,aj))>>0;ak=v+x>>0;v=v-(x)>>0;x=$imul(1108,((ab+z>>0)));z=x-($imul(3784,z))>>0;ab=x+($imul(1568,ab))>>0;x=ad+ah>>0;ad=ad-(ah)>>0;ah=af+aj>>0;af=af-(aj)>>0;aj=ak+ab>>0;ak=ak-(ab)>>0;ab=v+z>>0;v=v-(z)>>0;z=((($imul(181,((ad+af>>0))))+128>>0))>>8>>0;ad=((($imul(181,((ad-af>>0))))+128>>0))>>8>>0;(al=c+0>>0,a.nilCheck,((al<0||al>=a.length)?$throwRuntimeError("index out of range"):a[al]=(((aj+x>>0))>>8>>0)));(am=c+1>>0,a.nilCheck,((am<0||am>=a.length)?$throwRuntimeError("index out of range"):a[am]=(((ab+z>>0))>>8>>0)));(an=c+2>>0,a.nilCheck,((an<0||an>=a.length)?$throwRuntimeError("index out of range"):a[an]=(((v+ad>>0))>>8>>0)));(ao=c+3>>0,a.nilCheck,((ao<0||ao>=a.length)?$throwRuntimeError("index out of range"):a[ao]=(((ak+ah>>0))>>8>>0)));(ap=c+4>>0,a.nilCheck,((ap<0||ap>=a.length)?$throwRuntimeError("index out of range"):a[ap]=(((ak-ah>>0))>>8>>0)));(aq=c+5>>0,a.nilCheck,((aq<0||aq>=a.length)?$throwRuntimeError("index out of range"):a[aq]=(((v-ad>>0))>>8>>0)));(ar=c+6>>0,a.nilCheck,((ar<0||ar>=a.length)?$throwRuntimeError("index out of range"):a[ar]=(((ab-z>>0))>>8>>0)));(as=c+7>>0,a.nilCheck,((as<0||as>=a.length)?$throwRuntimeError("index out of range"):a[as]=(((aj-x>>0))>>8>>0)));b=b+(1)>>0;}at=0;while(true){if(!(at<8)){break;}av=(((au=0+at>>0,(a.nilCheck,((au<0||au>=a.length)?$throwRuntimeError("index out of range"):a[au])))<<8>>0))+8192>>0;ax=(aw=32+at>>0,(a.nilCheck,((aw<0||aw>=a.length)?$throwRuntimeError("index out of range"):a[aw])))<<8>>0;az=(ay=48+at>>0,(a.nilCheck,((ay<0||ay>=a.length)?$throwRuntimeError("index out of range"):a[ay])));bb=(ba=16+at>>0,(a.nilCheck,((ba<0||ba>=a.length)?$throwRuntimeError("index out of range"):a[ba])));bd=(bc=8+at>>0,(a.nilCheck,((bc<0||bc>=a.length)?$throwRuntimeError("index out of range"):a[bc])));bf=(be=56+at>>0,(a.nilCheck,((be<0||be>=a.length)?$throwRuntimeError("index out of range"):a[be])));bh=(bg=40+at>>0,(a.nilCheck,((bg<0||bg>=a.length)?$throwRuntimeError("index out of range"):a[bg])));bj=(bi=24+at>>0,(a.nilCheck,((bi<0||bi>=a.length)?$throwRuntimeError("index out of range"):a[bi])));bk=($imul(565,((bd+bf>>0))))+4>>0;bd=((bk+($imul(2276,bd))>>0))>>3>>0;bf=((bk-($imul(3406,bf))>>0))>>3>>0;bk=($imul(2408,((bh+bj>>0))))+4>>0;bh=((bk-($imul(799,bh))>>0))>>3>>0;bj=((bk-($imul(4017,bj))>>0))>>3>>0;bk=av+ax>>0;av=av-(ax)>>0;ax=($imul(1108,((bb+az>>0))))+4>>0;az=((ax-($imul(3784,az))>>0))>>3>>0;bb=((ax+($imul(1568,bb))>>0))>>3>>0;ax=bd+bh>>0;bd=bd-(bh)>>0;bh=bf+bj>>0;bf=bf-(bj)>>0;bj=bk+bb>>0;bk=bk-(bb)>>0;bb=av+az>>0;av=av-(az)>>0;az=((($imul(181,((bd+bf>>0))))+128>>0))>>8>>0;bd=((($imul(181,((bd-bf>>0))))+128>>0))>>8>>0;(bl=0+at>>0,a.nilCheck,((bl<0||bl>=a.length)?$throwRuntimeError("index out of range"):a[bl]=(((bj+ax>>0))>>14>>0)));(bm=8+at>>0,a.nilCheck,((bm<0||bm>=a.length)?$throwRuntimeError("index out of range"):a[bm]=(((bb+az>>0))>>14>>0)));(bn=16+at>>0,a.nilCheck,((bn<0||bn>=a.length)?$throwRuntimeError("index out of range"):a[bn]=(((av+bd>>0))>>14>>0)));(bo=24+at>>0,a.nilCheck,((bo<0||bo>=a.length)?$throwRuntimeError("index out of range"):a[bo]=(((bk+bh>>0))>>14>>0)));(bp=32+at>>0,a.nilCheck,((bp<0||bp>=a.length)?$throwRuntimeError("index out of range"):a[bp]=(((bk-bh>>0))>>14>>0)));(bq=40+at>>0,a.nilCheck,((bq<0||bq>=a.length)?$throwRuntimeError("index out of range"):a[bq]=(((av-bd>>0))>>14>>0)));(br=48+at>>0,a.nilCheck,((br<0||br>=a.length)?$throwRuntimeError("index out of range"):a[br]=(((bb-az>>0))>>14>>0)));(bs=56+at>>0,a.nilCheck,((bs<0||bs>=a.length)?$throwRuntimeError("index out of range"):a[bs]=(((bj-ax>>0))>>14>>0)));at=at+(1)>>0;}};L.prototype.Error=function(){var $ptr,a;a=this.$val;return"invalid JPEG format: "+a;};$ptrType(L).prototype.Error=function(){return new L(this.$get()).Error();};M.prototype.Error=function(){var $ptr,a;a=this.$val;return"unsupported JPEG feature: "+a;};$ptrType(M).prototype.Error=function(){return new M(this.$get()).Error();};S.ptr.prototype.fill=function(){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:a=this;if(!((a.bytes.i===a.bytes.j))){$panic(new $String("jpeg: fill called when unread bytes exist"));}if(a.bytes.j>2){a.bytes.buf[0]=(b=a.bytes.buf,c=a.bytes.j-2>>0,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]));a.bytes.buf[1]=(d=a.bytes.buf,e=a.bytes.j-1>>0,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));f=2;g=2;a.bytes.i=f;a.bytes.j=g;}i=a.r.Read($subslice(new AV(a.bytes.buf),a.bytes.j));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];a.bytes.j=a.bytes.j+(j)>>0;if(j>0){k=$ifaceNil;}return k;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.fill};}$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;};S.prototype.fill=function(){return this.$val.fill();};S.ptr.prototype.unreadByteStuffedByte=function(){var $ptr,a,b,c;a=this;a.bytes.i=a.bytes.i-(a.bytes.nUnreadable)>>0;a.bytes.nUnreadable=0;if(a.bits.n>=8){a.bits.a=(b=(8),b<32?(a.bits.a>>>b):0)>>>0;a.bits.n=a.bits.n-(8)>>0;a.bits.m=(c=(8),c<32?(a.bits.m>>>c):0)>>>0;}};S.prototype.unreadByteStuffedByte=function(){return this.$val.unreadByteStuffedByte();};S.ptr.prototype.readByte=function(){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:a=0;b=$ifaceNil;c=this;case 1:if(!(c.bytes.i===c.bytes.j)){$s=2;continue;}d=c.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(b,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=0;f=b;a=e;b=f;return[a,b];case 5:$s=1;continue;case 2:a=(g=c.bytes.buf,h=c.bytes.i,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=0;i=a;j=$ifaceNil;a=i;b=j;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByte};}$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;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.readByteStuffedByte=function(){var $ptr,a,aa,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;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=0;b=$ifaceNil;c=this;if((c.bytes.i+2>>0)<=c.bytes.j){a=(d=c.bytes.buf,e=c.bytes.i,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=1;if(!((a===255))){f=a;g=b;a=f;b=g;return[a,b];}if(!(((h=c.bytes.buf,i=c.bytes.i,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]))===0))){j=0;k=new L(T);a=j;b=k;return[a,b];}c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=2;l=255;m=$ifaceNil;a=l;b=m;return[a,b];}c.bytes.nUnreadable=0;o=c.readByte();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;a=n[0];b=n[1];if(!($interfaceIsEqual(b,$ifaceNil))){p=0;q=b;a=p;b=q;return[a,b];}c.bytes.nUnreadable=1;if(!((a===255))){r=a;s=$ifaceNil;a=r;b=s;return[a,b];}u=c.readByte();$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;a=t[0];b=t[1];if(!($interfaceIsEqual(b,$ifaceNil))){v=0;w=b;a=v;b=w;return[a,b];}c.bytes.nUnreadable=2;if(!((a===0))){x=0;y=new L(T);a=x;b=y;return[a,b];}z=255;aa=$ifaceNil;a=z;b=aa;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByteStuffedByte};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$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.readByteStuffedByte=function(){return this.$val.readByteStuffedByte();};S.ptr.prototype.readFull=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=$copySlice(a,$subslice(new AV(b.bytes.buf),b.bytes.i,b.bytes.j));a=$subslice(a,c);b.bytes.i=b.bytes.i+(c)>>0;if(a.$length===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readFull};}$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;};S.prototype.readFull=function(a){return this.$val.readFull(a);};S.ptr.prototype.ignore=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=b.bytes.j-b.bytes.i>>0;if(c>a){c=a;}b.bytes.i=b.bytes.i+(c)>>0;a=a-(c)>>0;if(a===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ignore};}$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;};S.prototype.ignore=function(a){return this.$val.ignore(a);};S.ptr.prototype.processSOF=function(a){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,$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;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;if(!((b.nComp===0))){return new L("multiple SOF markers");}c=a;if(c===9){b.nComp=1;}else if(c===15){b.nComp=3;}else if(c===18){b.nComp=4;}else{return new M("number of components");}d=b.readFull($subslice(new AV(b.tmp),0,a));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:if(!((b.tmp[0]===8))){return new M("precision");}b.height=((b.tmp[1]>>0)<<8>>0)+(b.tmp[2]>>0)>>0;b.width=((b.tmp[3]>>0)<<8>>0)+(b.tmp[4]>>0)>>0;if(!(((b.tmp[5]>>0)===b.nComp))){return new L("SOF has wrong length");}f=0;while(true){if(!(f=i.length)?$throwRuntimeError("index out of range"):i[f])).c=(g=b.tmp,h=6+($imul(3,f))>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));j=0;while(true){if(!(j=k.length)?$throwRuntimeError("index out of range"):k[f])).c===(l=b.comp,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j])).c){return new L("repeated component identifier");}j=j+(1)>>0;}(o=b.comp,((f<0||f>=o.length)?$throwRuntimeError("index out of range"):o[f])).tq=(m=b.tmp,n=8+($imul(3,f))>>0,((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]));if((p=b.comp,((f<0||f>=p.length)?$throwRuntimeError("index out of range"):p[f])).tq>3){return new L("bad Tq value");}s=(q=b.tmp,r=7+($imul(3,f))>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r]));t=((s>>>4<<24>>>24)>>0);u=(((s&15)>>>0)>>0);v=t;w=u;if(v<1||4=ae.length)?$throwRuntimeError("index out of range"):ae[f])).h=v;(af=b.comp,((f<0||f>=af.length)?$throwRuntimeError("index out of range"):af[f])).v=w;f=f+(1)>>0;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOF};}$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.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.processSOF=function(a){return this.$val.processSOF(a);};S.ptr.prototype.processDQT=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;case 1:if(!(a>0)){$s=2;continue;}a=a-(1)>>0;d=b.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=(e&15)>>>0;if(g>3){return new L("bad Tq value");}h=e>>>4<<24>>>24;if(h===0){$s=4;continue;}if(h===1){$s=5;continue;}$s=6;continue;case 4:if(a<64){$s=2;continue s;}a=a-(64)>>0;i=b.readFull($subslice(new AV(b.tmp),0,64));$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return j;case 10:k=(l=b.quant,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g]));m=0;while(true){if(!(m<64)){break;}n=m;(p=(q=b.quant,((g<0||g>=q.length)?$throwRuntimeError("index out of range"):q[g])),((n<0||n>=p.length)?$throwRuntimeError("index out of range"):p[n]=((o=b.tmp,((n<0||n>=o.length)?$throwRuntimeError("index out of range"):o[n]))>>0)));m++;}$s=7;continue;case 5:if(a<128){$s=2;continue s;}a=a-(128)>>0;r=b.readFull($subslice(new AV(b.tmp),0,128));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return s;case 13:t=(u=b.quant,((g<0||g>=u.length)?$throwRuntimeError("index out of range"):u[g]));v=0;while(true){if(!(v<64)){break;}w=v;(ab=(ac=b.quant,((g<0||g>=ac.length)?$throwRuntimeError("index out of range"):ac[g])),((w<0||w>=ab.length)?$throwRuntimeError("index out of range"):ab[w]=((((x=b.tmp,y=$imul(2,w),((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))>>0)<<8>>0)|((z=b.tmp,aa=($imul(2,w))+1>>0,((aa<0||aa>=z.length)?$throwRuntimeError("index out of range"):z[aa]))>>0))));v++;}$s=7;continue;case 6:return new L("bad Pq value");case 7:$s=1;continue;case 2:if(!((a===0))){return new L("DQT has wrong length");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDQT};}$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;};S.prototype.processDQT=function(a){return this.$val.processDQT(a);};S.ptr.prototype.processDRI=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;if(!((a===2))){return new L("DRI has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,2));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:b.ri=((b.tmp[0]>>0)<<8>>0)+(b.tmp[1]>>0)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDRI};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.processDRI=function(a){return this.$val.processDRI(a);};S.ptr.prototype.processApp0Marker=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;if(a<5){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,5));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(5)>>0;b.jfif=(b.tmp[0]===74)&&(b.tmp[1]===70)&&(b.tmp[2]===73)&&(b.tmp[3]===70)&&(b.tmp[4]===0);if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp0Marker};}$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;};S.prototype.processApp0Marker=function(a){return this.$val.processApp0Marker(a);};S.ptr.prototype.processApp14Marker=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;if(a<12){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,12));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(12)>>0;if((b.tmp[0]===65)&&(b.tmp[1]===100)&&(b.tmp[2]===111)&&(b.tmp[3]===98)&&(b.tmp[4]===101)){b.adobeTransformValid=true;b.adobeTransform=b.tmp[11];}if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp14Marker};}$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;};S.prototype.processApp14Marker=function(a){return this.$val.processApp14Marker(a);};S.ptr.prototype.decode=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,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;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;c.r=a;d=c.readFull($subslice(new AV(c.tmp),0,2));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,e];case 3:if(!((c.tmp[0]===255))||!((c.tmp[1]===216))){return[$ifaceNil,new L("missing SOI marker")];}case 4:f=c.readFull($subslice(new AV(c.tmp),0,2));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}case 7:if(!(!((c.tmp[0]===255)))){$s=8;continue;}c.tmp[0]=c.tmp[1];i=c.readByte();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.tmp[1]=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=7;continue;case 8:j=c.tmp[1];if(j===0){$s=10;continue;}$s=11;continue;case 10:$s=4;continue;case 11:case 12:if(!(j===255)){$s=13;continue;}l=c.readByte();$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];g=k[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=12;continue;case 13:if(j===217){$s=5;continue;}if(208<=j&&j<=215){$s=15;continue;}$s=16;continue;case 15:$s=4;continue;case 16:m=c.readFull($subslice(new AV(c.tmp),0,2));$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;if(!($interfaceIsEqual(g,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:return[$ifaceNil,g];case 19:n=(((c.tmp[0]>>0)<<8>>0)+(c.tmp[1]>>0)>>0)-2>>0;if(n<0){return[$ifaceNil,new L("short segment length")];}o=j;if(o===192||o===193||o===194){$s=20;continue;}if(o===196){$s=21;continue;}if(o===219){$s=22;continue;}if(o===218){$s=23;continue;}if(o===221){$s=24;continue;}if(o===224){$s=25;continue;}if(o===238){$s=26;continue;}$s=27;continue;case 20:c.progressive=j===194;p=c.processSOF(n);$s=29;case 29:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}g=p;if(b&&c.jfif){return[$ifaceNil,g];}$s=28;continue;case 21:if(b){$s=30;continue;}$s=31;continue;case 30:q=c.ignore(n);$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}g=q;$s=32;continue;case 31:r=c.processDHT(n);$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 32:$s=28;continue;case 22:if(b){$s=35;continue;}$s=36;continue;case 35:s=c.ignore(n);$s=38;case 38:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}g=s;$s=37;continue;case 36:t=c.processDQT(n);$s=39;case 39:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}g=t;case 37:$s=28;continue;case 23:if(b){return[$ifaceNil,$ifaceNil];}u=c.processSOS(n);$s=40;case 40:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}g=u;$s=28;continue;case 24:if(b){$s=41;continue;}$s=42;continue;case 41:v=c.ignore(n);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}g=v;$s=43;continue;case 42:w=c.processDRI(n);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}g=w;case 43:$s=28;continue;case 25:x=c.processApp0Marker(n);$s=46;case 46:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}g=x;$s=28;continue;case 26:y=c.processApp14Marker(n);$s=47;case 47:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}g=y;$s=28;continue;case 27:if(224<=j&&j<=239||(j===254)){$s=48;continue;}if(j<192){$s=49;continue;}$s=50;continue;case 48:z=c.ignore(n);$s=52;case 52:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}g=z;$s=51;continue;case 49:g=new L("unknown marker");$s=51;continue;case 50:g=new M("unknown marker");case 51:case 28:if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=4;continue;case 5:if(!(c.img1===AX.nil)){return[c.img1,$ifaceNil];}if(!(c.img3===AY.nil)){if(!(c.blackPix===AV.nil)){return c.applyBlack();}else if(c.isRGB()){return c.convertToRGB();}return[c.img3,$ifaceNil];}return[$ifaceNil,new L("missing SOS marker")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decode};}$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.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.decode=function(a,b){return this.$val.decode(a,b);};S.ptr.prototype.applyBlack=function(){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;a=this;if(!a.adobeTransformValid){return[$ifaceNil,new M("unknown color model: 4-component JPEG doesn't have Adobe APP14 metadata")];}if(!((a.adobeTransform===0))){b=$clone(a.img3.Bounds(),B.Rectangle);c=B.NewRGBA(b);D.DrawYCbCr(c,b,a.img3,b.Min);d=0;e=b.Min.Y;f=d;g=e;while(true){if(!(g>0;i=b.Min.X;j=h;k=i;while(true){if(!(k=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+j]=(255-(l=a.blackPix,m=($imul(((g-b.Min.Y>>0)),a.blackStride))+((k-b.Min.X>>0))>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))<<24>>>24)));o=j+4>>0;p=k+1>>0;j=o;k=p;}q=f+c.Stride>>0;r=g+1>>0;f=q;g=r;}return[new B.CMYK.ptr(c.Pix,c.Stride,$clone(c.Rect,B.Rectangle)),$ifaceNil];}s=$clone(a.img3.Bounds(),B.Rectangle);t=B.NewCMYK(s);u=$toNativeArray($kindStruct,[new AZ.ptr(a.img3.Y,a.img3.YStride),new AZ.ptr(a.img3.Cb,a.img3.CStride),new AZ.ptr(a.img3.Cr,a.img3.CStride),new AZ.ptr(a.blackPix,a.blackStride)]);v=u;w=0;while(true){if(!(w<4)){break;}x=w;y=$clone(((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]),AZ);ab=!(((z=a.comp,((x<0||x>=z.length)?$throwRuntimeError("index out of range"):z[x])).h===a.comp[0].h))||!(((aa=a.comp,((x<0||x>=aa.length)?$throwRuntimeError("index out of range"):aa[x])).v===a.comp[0].v));ac=0;ad=s.Min.Y;ae=ac;af=ad;while(true){if(!(af>0;if(ab){ag=(ah=ag/(2),(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero"));}ai=ae+x>>0;aj=s.Min.X;ak=ai;al=aj;while(true){if(!(al>0;if(ab){am=(an=am/(2),(an===an&&an!==1/0&&an!==-1/0)?an>>0:$throwRuntimeError("integer divide by zero"));}(aq=t.Pix,((ak<0||ak>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ak]=(255-(ao=y.src,ap=($imul(ag,y.stride))+am>>0,((ap<0||ap>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ap]))<<24>>>24)));ar=ak+4>>0;as=al+1>>0;ak=ar;al=as;}at=ae+t.Stride>>0;au=af+1>>0;ae=at;af=au;}w++;}return[t,$ifaceNil];};S.prototype.applyBlack=function(){return this.$val.applyBlack();};S.ptr.prototype.isRGB=function(){var $ptr,a;a=this;if(a.jfif){return false;}if(a.adobeTransformValid&&(a.adobeTransform===0)){return true;}return(a.comp[0].c===82)&&(a.comp[1].c===71)&&(a.comp[2].c===66);};S.prototype.isRGB=function(){return this.$val.isRGB();};S.ptr.prototype.convertToRGB=function(){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;a=this;c=(b=a.comp[0].h/a.comp[1].h,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));d=$clone(a.img3.Bounds(),B.Rectangle);e=B.NewRGBA(d);f=d.Min.Y;while(true){if(!(f>0;l=j;m=k;while(true){if(!(l>0)+0>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(n=a.img3.Y,o=h+l>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))));(u=e.Pix,v=(g+($imul(4,l))>>0)+1>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]=(r=a.img3.Cb,s=i+(t=l/c,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]))));(z=e.Pix,aa=(g+($imul(4,l))>>0)+2>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(w=a.img3.Cr,x=i+(y=l/c,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))));(ab=e.Pix,ac=(g+($imul(4,l))>>0)+3>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]=255));l=l+(1)>>0;}f=f+(1)>>0;}return[e,$ifaceNil];};S.prototype.convertToRGB=function(){return this.$val.convertToRGB();};U=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=U;V=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());d=b.decode(a,true);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new B.Config.ptr($ifaceNil,0,0),e];case 3:f=b.nComp;if(f===1){return[new B.Config.ptr(C.GrayModel,b.width,b.height),$ifaceNil];}else if(f===3){g=C.YCbCrModel;if(b.isRGB()){g=C.RGBAModel;}return[new B.Config.ptr(g,b.width,b.height),$ifaceNil];}else if(f===4){return[new B.Config.ptr(C.CMYKModel,b.width,b.height),$ifaceNil];}return[new B.Config.ptr($ifaceNil,0,0),new L("missing SOF marker")];}return;}if($f===undefined){$f={$blk:V};}$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.DecodeConfig=V;W=function(){var $ptr;B.RegisterFormat("jpeg","\xFF\xD8",U,V);};S.ptr.prototype.makeImg=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;if(c.nComp===1){d=B.NewGray(B.Rect(0,0,$imul(8,a),$imul(8,b)));c.img1=$assertType(d.SubImage(B.Rect(0,0,c.width,c.height)),AX);return;}e=c.comp[0].h;f=c.comp[0].v;h=(g=e/c.comp[1].h,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));j=(i=f/c.comp[1].v,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));k=0;l=(h<<4>>0)|j;if(l===17){k=0;}else if(l===18){k=3;}else if(l===33){k=1;}else if(l===34){k=2;}else if(l===65){k=4;}else if(l===66){k=5;}else{$panic(new $String("unreachable"));}m=B.NewYCbCr(B.Rect(0,0,$imul(($imul(8,e)),a),$imul(($imul(8,f)),b)),k);c.img3=$assertType(m.SubImage(B.Rect(0,0,c.width,c.height)),AY);if(c.nComp===4){n=c.comp[3].h;o=c.comp[3].v;p=n;q=o;c.blackPix=$makeSlice(AV,($imul(($imul(($imul(($imul(($imul(8,p)),a)),8)),q)),b)));c.blackStride=$imul(($imul(8,p)),a);}};S.prototype.makeImg=function(a,b){return this.$val.makeImg(a,b);};S.ptr.prototype.processSOS=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,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,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;em=$f.em;en=$f.en;eo=$f.eo;ep=$f.ep;eq=$f.eq;er=$f.er;es=$f.es;et=$f.et;eu=$f.eu;ev=$f.ev;ew=$f.ew;ex=$f.ex;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=[b];c=this;if(c.nComp===0){return new L("missing SOF marker");}if(a<6||(4+($imul(2,c.nComp))>>0)>0);if(!((a===(4+($imul(2,g))>>0)))){return new L("SOS length inconsistent with number of components");}h=BN.zero();i=0;j=0;while(true){if(!(j>0,((l<0||l>=k.length)?$throwRuntimeError("index out of range"):k[l]));n=-1;o=$subslice(new BO(c.comp),0,c.nComp);p=0;while(true){if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]),O);if(m===r.c){n=q;}p++;}if(n<0){return new L("unknown component selector");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex=(n<<24>>>24);s=0;while(true){if(!(s=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex===((s<0||s>=h.length)?$throwRuntimeError("index out of range"):h[s]).compIndex){return new L("repeated component selector");}s=s+(1)>>0;}i=i+(($imul((t=c.comp,((n<0||n>=t.length)?$throwRuntimeError("index out of range"):t[n])).h,(u=c.comp,((n<0||n>=u.length)?$throwRuntimeError("index out of range"):u[n])).v)))>>0;((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td=(v=c.tmp,w=2+($imul(2,j))>>0,((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]))>>>4<<24>>>24;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td>3){return new L("bad Td value");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta=((x=c.tmp,y=2+($imul(2,j))>>0,((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))&15)>>>0;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta>3){return new L("bad Ta value");}j=j+(1)>>0;}if(c.nComp>1&&i>10){return new L("total sampling factors too large");}z=0;aa=63;ab=0;ac=0;ad=z;ae=aa;af=ab;ag=ac;if(c.progressive){ad=((ah=c.tmp,ai=1+($imul(2,g))>>0,((ai<0||ai>=ah.length)?$throwRuntimeError("index out of range"):ah[ai]))>>0);ae=((aj=c.tmp,ak=2+($imul(2,g))>>0,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak]))>>0);af=(((al=c.tmp,am=3+($imul(2,g))>>0,((am<0||am>=al.length)?$throwRuntimeError("index out of range"):al[am]))>>>4<<24>>>24)>>>0);ag=((((an=c.tmp,ao=3+($imul(2,g))>>0,((ao<0||ao>=an.length)?$throwRuntimeError("index out of range"):an[ao]))&15)>>>0)>>>0);if(((ad===0)&&!((ae===0)))||ad>ae||64<=ae){return new L("bad spectral selection bounds");}if(!((ad===0))&&!((g===1))){return new L("progressive AC coefficients for more than one component");}if(!((af===0))&&!((af===(ag+1>>>0)))){return new L("bad successive approximation values");}}ap=c.comp[0].h;aq=c.comp[0].v;ar=ap;as=aq;au=(at=(((c.width+($imul(8,ar))>>0)-1>>0))/(($imul(8,ar))),(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero"));aw=(av=(((c.height+($imul(8,as))>>0)-1>>0))/(($imul(8,as))),(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(c.img1===AX.nil&&c.img3===AY.nil){c.makeImg(au,aw);}if(c.progressive){ax=0;while(true){if(!(ax=h.length)?$throwRuntimeError("index out of range"):h[ax]).compIndex;if((az=c.progCoeffs,((ay<0||ay>=az.length)?$throwRuntimeError("index out of range"):az[ay]))===BD.nil){(bc=c.progCoeffs,((ay<0||ay>=bc.length)?$throwRuntimeError("index out of range"):bc[ay]=$makeSlice(BD,($imul(($imul(($imul(au,aw)),(ba=c.comp,((ay<0||ay>=ba.length)?$throwRuntimeError("index out of range"):ba[ay])).h)),(bb=c.comp,((ay<0||ay>=bb.length)?$throwRuntimeError("index out of range"):bb[ay])).v)))));}ax=ax+(1)>>0;}}R.copy(c.bits,new R.ptr(0,0,0));bd=0;be=208;bf=bd;bg=be;b[0]=BJ.zero();bh=BP.zero();bi=0;bj=0;bk=bi;bl=bj;bm=0;bn=0;case 4:if(!(bn=h.length)?$throwRuntimeError("index out of range"):h[bp]).compIndex;bs=(br=c.comp,((bq<0||bq>=br.length)?$throwRuntimeError("index out of range"):br[bq])).h;bu=(bt=c.comp,((bq<0||bq>=bt.length)?$throwRuntimeError("index out of range"):bt[bq])).v;by=(bv=c.quant,bw=(bx=c.comp,((bq<0||bq>=bx.length)?$throwRuntimeError("index out of range"):bx[bq])).tq,((bw<0||bw>=bv.length)?$throwRuntimeError("index out of range"):bv[bw]));bz=0;case 10:if(!(bz<($imul(bs,bu)))){$s=11;continue;}if(!((g===1))){$s=12;continue;}$s=13;continue;case 12:bk=($imul(bs,bo))+(ca=bz%bs,ca===ca?ca:$throwRuntimeError("integer divide by zero"))>>0;bl=($imul(bu,bn))+(cb=bz/bs,(cb===cb&&cb!==1/0&&cb!==-1/0)?cb>>0:$throwRuntimeError("integer divide by zero"))>>0;$s=14;continue;case 13:cc=$imul(au,bs);bk=(cd=bm%cc,cd===cd?cd:$throwRuntimeError("integer divide by zero"));bl=(ce=bm/cc,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"));bm=bm+(1)>>0;if(($imul(bk,8))>=c.width||($imul(bl,8))>=c.height){bz=bz+(1)>>0;$s=10;continue;}case 14:if(c.progressive){J.copy(b[0],(cf=(cg=c.progCoeffs,((bq<0||bq>=cg.length)?$throwRuntimeError("index out of range"):cg[bq])),ch=($imul(($imul(bl,au)),bs))+bk>>0,((ch<0||ch>=cf.$length)?$throwRuntimeError("index out of range"):cf.$array[cf.$offset+ch])));}else{J.copy(b[0],BJ.zero());}if(!((af===0))){$s=15;continue;}$s=16;continue;case 15:cl=c.refine(b[0],(ci=c.huff[1],cj=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cj<0||cj>=ci.length)?$throwRuntimeError("index out of range"):ci[cj])),ad,ae,(ck=ag,ck<32?(1<>0);$s=18;case 18:if($c){$c=false;cl=cl.$blk();}if(cl&&cl.$blk!==undefined){break s;}cm=cl;if(!($interfaceIsEqual(cm,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:return cm;case 20:$s=17;continue;case 16:cn=ad;if(cn===0){$s=21;continue;}$s=22;continue;case 21:cn=cn+(1)>>0;cr=c.decodeHuffman((cp=c.huff[0],cq=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).td,((cq<0||cq>=cp.length)?$throwRuntimeError("index out of range"):cp[cq])));$s=23;case 23:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}co=cr;cs=co[0];ct=co[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}if(cs>16){return new M("excessive DC component");}cv=c.receiveExtend(cs);$s=24;case 24:if($c){$c=false;cv=cv.$blk();}if(cv&&cv.$blk!==undefined){break s;}cu=cv;cw=cu[0];ct=cu[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq]=(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])+(cw)>>0));b[0][0]=((cx=ag,cx<32?(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])<>0);case 22:if(cn<=ae&&c.eobRun>0){$s=25;continue;}$s=26;continue;case 25:c.eobRun=c.eobRun-(1)<<16>>>16;$s=27;continue;case 26:da=(cy=c.huff[1],cz=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cz<0||cz>=cy.length)?$throwRuntimeError("index out of range"):cy[cz]));case 28:if(!(cn<=ae)){$s=29;continue;}dc=c.decodeHuffman(da);$s=30;case 30:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}db=dc;dd=db[0];de=db[1];if(!($interfaceIsEqual(de,$ifaceNil))){return de;}df=dd>>>4<<24>>>24;dg=(dd&15)>>>0;if(!((dg===0))){$s=31;continue;}$s=32;continue;case 31:cn=cn+((df>>0))>>0;if(cn>ae){$s=29;continue;}di=c.receiveExtend(dg);$s=34;case 34:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}dh=di;dj=dh[0];dk=dh[1];if(!($interfaceIsEqual(dk,$ifaceNil))){return dk;}(dm=((cn<0||cn>=P.length)?$throwRuntimeError("index out of range"):P[cn]),((dm<0||dm>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dm]=((dl=ag,dl<32?(dj<>0)));$s=33;continue;case 32:if(!((df===15))){$s=35;continue;}$s=36;continue;case 35:c.eobRun=((dn=df,dn<32?(1<>>16);if(!((df===0))){$s=37;continue;}$s=38;continue;case 37:dq=c.decodeBits((df>>0));$s=39;case 39:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}dp=dq;dr=dp[0];ds=dp[1];if(!($interfaceIsEqual(ds,$ifaceNil))){return ds;}c.eobRun=(c.eobRun|((dr<<16>>>16)))>>>0;case 38:c.eobRun=c.eobRun-(1)<<16>>>16;$s=29;continue;case 36:cn=cn+(15)>>0;case 33:cn=cn+(1)>>0;$s=28;continue;case 29:case 27:case 17:if(c.progressive){if(!((ae===63))||!((ag===0))){J.copy((dt=(du=c.progCoeffs,((bq<0||bq>=du.length)?$throwRuntimeError("index out of range"):du[bq])),dv=($imul(($imul(bl,au)),bs))+bk>>0,((dv<0||dv>=dt.$length)?$throwRuntimeError("index out of range"):dt.$array[dt.$offset+dv])),b[0]);bz=bz+(1)>>0;$s=10;continue;}}dw=0;while(true){if(!(dw<64)){break;}(dy=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dy<0||dy>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dy]=($imul((dx=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dx<0||dx>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dx])),((by.nilCheck,((dw<0||dw>=by.length)?$throwRuntimeError("index out of range"):by[dw])))))));dw=dw+(1)>>0;}K(b[0]);dz=AV.nil;ea=0;eb=dz;ec=ea;if(c.nComp===1){ed=$subslice(c.img1.Pix,($imul(8,((($imul(bl,c.img1.Stride))+bk>>0)))));ee=c.img1.Stride;eb=ed;ec=ee;}else{ef=bq;if(ef===0){eg=$subslice(c.img3.Y,($imul(8,((($imul(bl,c.img3.YStride))+bk>>0)))));eh=c.img3.YStride;eb=eg;ec=eh;}else if(ef===1){ei=$subslice(c.img3.Cb,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));ej=c.img3.CStride;eb=ei;ec=ej;}else if(ef===2){ek=$subslice(c.img3.Cr,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));el=c.img3.CStride;eb=ek;ec=el;}else if(ef===3){em=$subslice(c.blackPix,($imul(8,((($imul(bl,c.blackStride))+bk>>0)))));en=c.blackStride;eb=em;ec=en;}else{return new M("too many components");}}eo=0;while(true){if(!(eo<8)){break;}ep=$imul(eo,8);eq=$imul(eo,ec);er=0;while(true){if(!(er<8)){break;}et=(es=ep+er>>0,((es<0||es>=b[0].length)?$throwRuntimeError("index out of range"):b[0][es]));if(et<-128){et=0;}else if(et>127){et=255;}else{et=et+(128)>>0;}(eu=eq+er>>0,((eu<0||eu>=eb.$length)?$throwRuntimeError("index out of range"):eb.$array[eb.$offset+eu]=(et<<24>>>24)));er=er+(1)>>0;}eo=eo+(1)>>0;}bz=bz+(1)>>0;$s=10;continue;case 11:bp=bp+(1)>>0;$s=8;continue;case 9:bf=bf+(1)>>0;if(c.ri>0&&((ev=bf%c.ri,ev===ev?ev:$throwRuntimeError("integer divide by zero"))===0)&&bf<($imul(au,aw))){$s=40;continue;}$s=41;continue;case 40:ew=c.readFull($subslice(new AV(c.tmp),0,2));$s=42;case 42:if($c){$c=false;ew=ew.$blk();}if(ew&&ew.$blk!==undefined){break s;}ex=ew;if(!($interfaceIsEqual(ex,$ifaceNil))){$s=43;continue;}$s=44;continue;case 43:return ex;case 44:if(!((c.tmp[0]===255))||!((c.tmp[1]===bg))){return new L("bad RST marker");}bg=bg+(1)<<24>>>24;if(bg===216){bg=208;}R.copy(c.bits,new R.ptr(0,0,0));BP.copy(bh,BP.zero());c.eobRun=0;case 41:bo=bo+(1)>>0;$s=6;continue;case 7:bn=bn+(1)>>0;$s=4;continue;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOS};}$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.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.d=d;$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.e=e;$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.el=el;$f.em=em;$f.en=en;$f.eo=eo;$f.ep=ep;$f.eq=eq;$f.er=er;$f.es=es;$f.et=et;$f.eu=eu;$f.ev=ev;$f.ew=ew;$f.ex=ex;$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.processSOS=function(a){return this.$val.processSOS(a);};S.ptr.prototype.refine=function(a,b,c,d,e){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,$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;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:f=this;if(c===0){$s=1;continue;}$s=2;continue;case 1:if(!((d===0))){$panic(new $String("unreachable"));}h=f.decodeBit();$s=3;case 3: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))){return j;}if(i){a.nilCheck,a[0]=((a.nilCheck,a[0])|(e));}return $ifaceNil;case 2:k=c;if(f.eobRun===0){$s=4;continue;}$s=5;continue;case 4:case 6:if(!(k<=d)){$s=7;continue;}l=0;n=f.decodeHuffman(b);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}q=o>>>4<<24>>>24;r=(o&15)>>>0;s=r;if(s===0){$s=9;continue;}if(s===1){$s=10;continue;}$s=11;continue;case 9:if(!((q===15))){$s=13;continue;}$s=14;continue;case 13:f.eobRun=((t=q,t<32?(1<>>16);if(!((q===0))){$s=15;continue;}$s=16;continue;case 15:v=f.decodeBits((q>>0));$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!($interfaceIsEqual(x,$ifaceNil))){return x;}f.eobRun=(f.eobRun|((w<<16>>>16)))>>>0;case 16:$s=7;continue s;case 14:$s=12;continue;case 10:l=e;z=f.decodeBit();$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!($interfaceIsEqual(ab,$ifaceNil))){return ab;}if(!aa){l=-l;}$s=12;continue;case 11:return new L("unexpected Huffman code");case 12:ad=f.refineNonZeroes(a,k,d,(q>>0),e);$s=19;case 19:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;k=ac[0];p=ac[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}if(k>d){return new L("too many coefficients");}if(!((l===0))){(ae=((k<0||k>=P.length)?$throwRuntimeError("index out of range"):P[k]),a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae]=l));}k=k+(1)>>0;$s=6;continue;case 7:case 5:if(f.eobRun>0){$s=20;continue;}$s=21;continue;case 20:f.eobRun=f.eobRun-(1)<<16>>>16;ag=f.refineNonZeroes(a,k,d,-1,e);$s=22;case 22:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:return ah;case 24:case 21:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refine};}$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.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.refine=function(a,b,c,d,e){return this.$val.refine(a,b,c,d,e);};S.ptr.prototype.refineNonZeroes=function(a,b,c,d,e){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:f=this;case 1:if(!(b<=c)){$s=2;continue;}g=((b<0||b>=P.length)?$throwRuntimeError("index out of range"):P[b]);if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))===0){$s=3;continue;}$s=4;continue;case 3:if(d===0){$s=2;continue;}d=d-(1)>>0;b=b+(1)>>0;$s=1;continue;case 4:i=f.decodeBit();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[0,k];}if(!j){b=b+(1)>>0;$s=1;continue;}if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))>=0){a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))+(e)>>0));}else{a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))-(e)>>0));}b=b+(1)>>0;$s=1;continue;case 2:return[b,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refineNonZeroes};}$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;};S.prototype.refineNonZeroes=function(a,b,c,d,e){return this.$val.refineNonZeroes(a,b,c,d,e);};$ptrType(AF).prototype.init=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=$clone(a,AD);b=this;c=0;d=a.value;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);if((f>>0)>c){c=(f>>0);}e++;}b.$set((g=$makeSlice(BQ,(c+1>>0)),$subslice(new AF(g.$array),g.$offset,g.$offset+g.$length)));h=0;i=0;j=h;k=i;l=0;while(true){if(!(l<16)){break;}m=((l+1>>0)>>>0)<<24>>>0;n=0;while(true){if(!(n<(o=a.count,((l<0||l>=o.length)?$throwRuntimeError("index out of range"):o[l])))){break;}(p=b.$get(),q=(r=a.value,((k<0||k>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+k])),((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((m|j)>>>0)));j=j+(1)>>>0;k=k+(1)>>0;n=n+(1)<<24>>>24;}j=(s=(1),s<32?(j<>>0;l=l+(1)>>0;}};AH=function(){var $ptr,a,b,c,d;a=AE;b=0;while(true){if(!(b<4)){break;}c=b;d=$clone(((b<0||b>=a.length)?$throwRuntimeError("index out of range"):a[b]),AD);$indexPtr(AG,c,BR).init(d);b++;}};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];M.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BY.methods=[{prop:"ensureNBits",name:"ensureNBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$error],false)},{prop:"receiveExtend",name:"receiveExtend",pkg:"image/jpeg",typ:$funcType([$Uint8],[$Int32,$error],false)},{prop:"processDHT",name:"processDHT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decodeHuffman",name:"decodeHuffman",pkg:"image/jpeg",typ:$funcType([BW],[$Uint8,$error],false)},{prop:"decodeBit",name:"decodeBit",pkg:"image/jpeg",typ:$funcType([],[$Bool,$error],false)},{prop:"decodeBits",name:"decodeBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$Uint32,$error],false)},{prop:"fill",name:"fill",pkg:"image/jpeg",typ:$funcType([],[$error],false)},{prop:"unreadByteStuffedByte",name:"unreadByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[],false)},{prop:"readByte",name:"readByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readByteStuffedByte",name:"readByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readFull",name:"readFull",pkg:"image/jpeg",typ:$funcType([AV],[$error],false)},{prop:"ignore",name:"ignore",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processSOF",name:"processSOF",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDQT",name:"processDQT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDRI",name:"processDRI",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp0Marker",name:"processApp0Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp14Marker",name:"processApp14Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decode",name:"decode",pkg:"image/jpeg",typ:$funcType([A.Reader,$Bool],[B.Image,$error],false)},{prop:"applyBlack",name:"applyBlack",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"isRGB",name:"isRGB",pkg:"image/jpeg",typ:$funcType([],[$Bool],false)},{prop:"convertToRGB",name:"convertToRGB",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"makeImg",name:"makeImg",pkg:"image/jpeg",typ:$funcType([$Int,$Int],[],false)},{prop:"processSOS",name:"processSOS",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"refine",name:"refine",pkg:"image/jpeg",typ:$funcType([BX,BW,$Int32,$Int32,$Int32],[$error],false)},{prop:"refineNonZeroes",name:"refineNonZeroes",pkg:"image/jpeg",typ:$funcType([BX,$Int32,$Int32,$Int32,$Int32],[$Int32,$error],false)}];BR.methods=[{prop:"init",name:"init",pkg:"image/jpeg",typ:$funcType([AD],[],false)}];H.init([{prop:"nCodes",name:"nCodes",pkg:"image/jpeg",typ:$Int32,tag:""},{prop:"lut",name:"lut",pkg:"image/jpeg",typ:BF,tag:""},{prop:"vals",name:"vals",pkg:"image/jpeg",typ:BG,tag:""},{prop:"minCodes",name:"minCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"maxCodes",name:"maxCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"valsIndices",name:"valsIndices",pkg:"image/jpeg",typ:AW,tag:""}]);J.init($Int32,64);O.init([{prop:"h",name:"h",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"v",name:"v",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"c",name:"c",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"tq",name:"tq",pkg:"image/jpeg",typ:$Uint8,tag:""}]);R.init([{prop:"a",name:"a",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"m",name:"m",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"n",name:"n",pkg:"image/jpeg",typ:$Int32,tag:""}]);S.init([{prop:"r",name:"r",pkg:"image/jpeg",typ:A.Reader,tag:""},{prop:"bits",name:"bits",pkg:"image/jpeg",typ:R,tag:""},{prop:"bytes",name:"bytes",pkg:"image/jpeg",typ:BB,tag:""},{prop:"width",name:"width",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"img1",name:"img1",pkg:"image/jpeg",typ:AX,tag:""},{prop:"img3",name:"img3",pkg:"image/jpeg",typ:AY,tag:""},{prop:"blackPix",name:"blackPix",pkg:"image/jpeg",typ:AV,tag:""},{prop:"blackStride",name:"blackStride",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"ri",name:"ri",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nComp",name:"nComp",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"progressive",name:"progressive",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"jfif",name:"jfif",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransformValid",name:"adobeTransformValid",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransform",name:"adobeTransform",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"eobRun",name:"eobRun",pkg:"image/jpeg",typ:$Uint16,tag:""},{prop:"comp",name:"comp",pkg:"image/jpeg",typ:BC,tag:""},{prop:"progCoeffs",name:"progCoeffs",pkg:"image/jpeg",typ:BE,tag:""},{prop:"huff",name:"huff",pkg:"image/jpeg",typ:BI,tag:""},{prop:"quant",name:"quant",pkg:"image/jpeg",typ:BK,tag:""},{prop:"tmp",name:"tmp",pkg:"image/jpeg",typ:BL,tag:""}]);AD.init([{prop:"count",name:"count",pkg:"image/jpeg",typ:AU,tag:""},{prop:"value",name:"value",pkg:"image/jpeg",typ:AV,tag:""}]);AF.init($Uint32);$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=F.$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=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AG=AS.zero();I="short Huffman data";N="luma/chroma subsampling ratio";P=$toNativeArray($kindInt,[0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);T="missing 0xff00 sequence";AE=$toNativeArray($kindStruct,[new AD.ptr($toNativeArray($kindUint8,[0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125]),new AV([1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250])),new AD.ptr($toNativeArray($kindUint8,[0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119]),new AV([0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250]))]);W();AH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["math/rand"]=(function(){var $pkg={},$init,B,A,J,L,AB,AD,AH,AI,AJ,AL,AM,C,D,E,G,H,I,N,AC,F,K,M,AE;B=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["math"];J=$pkg.Source=$newType(8,$kindInterface,"rand.Source","Source","math/rand",null);L=$pkg.Rand=$newType(0,$kindStruct,"rand.Rand","Rand","math/rand",function(src_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;return;}this.src=src_;});AB=$pkg.lockedSource=$newType(0,$kindStruct,"rand.lockedSource","lockedSource","math/rand",function(lk_,src_){this.$val=this;if(arguments.length===0){this.lk=new B.Mutex.ptr(false);this.src=$ifaceNil;return;}this.lk=lk_;this.src=src_;});AD=$pkg.rngSource=$newType(0,$kindStruct,"rand.rngSource","rngSource","math/rand",function(tap_,feed_,vec_){this.$val=this;if(arguments.length===0){this.tap=0;this.feed=0;this.vec=AH.zero();return;}this.tap=tap_;this.feed=feed_;this.vec=vec_;});AH=$arrayType($Int64,607);AI=$sliceType($Int);AJ=$ptrType(L);AL=$ptrType(AB);AM=$ptrType(AD);L.ptr.prototype.ExpFloat64=function(){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:a=this;case 1:b=a.Uint32();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=(c&255)>>>0;e=c*((d<0||d>=D.length)?$throwRuntimeError("index out of range"):D[d]);if(c<((d<0||d>=C.length)?$throwRuntimeError("index out of range"):C[d])){return e;}if(d===0){$s=4;continue;}$s=5;continue;case 4:f=a.Float64();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.Log(f);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=8;case 8:return 7.69711747013105-g;case 5:h=a.Float64();$s=11;case 11:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if($fround(((d<0||d>=E.length)?$throwRuntimeError("index out of range"):E[d])+$fround($fround(h)*($fround((i=d-1>>>0,((i<0||i>=E.length)?$throwRuntimeError("index out of range"):E[i]))-((d<0||d>=E.length)?$throwRuntimeError("index out of range"):E[d])))))<$fround(A.Exp(-e))){$s=9;continue;}$s=10;continue;case 9:return e;case 10:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L.ptr.prototype.ExpFloat64};}$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;};L.prototype.ExpFloat64=function(){return this.$val.ExpFloat64();};F=function(a){var $ptr,a;if(a<0){return(-a>>>0);}return(a>>>0);};L.ptr.prototype.NormFloat64=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;case 1:b=a.Uint32();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=(b>>0);d=c&127;e=c*((d<0||d>=H.length)?$throwRuntimeError("index out of range"):H[d]);if(F(c)<((d<0||d>=G.length)?$throwRuntimeError("index out of range"):G[d])){return e;}if(d===0){$s=4;continue;}$s=5;continue;case 4:case 6:f=a.Float64();$s=8;case 8:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.Log(f);$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=-g*0.29047645161474317;h=a.Float64();$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.Log(h);$s=11;case 11:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=-i;if(j+j>=e*e){$s=7;continue;}$s=6;continue;case 7:if(c>0){return 3.442619855899+e;}return-3.442619855899-e;case 5:k=a.Float64();$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if($fround(((d<0||d>=I.length)?$throwRuntimeError("index out of range"):I[d])+$fround($fround(k)*($fround((l=d-1>>0,((l<0||l>=I.length)?$throwRuntimeError("index out of range"):I[l]))-((d<0||d>=I.length)?$throwRuntimeError("index out of range"):I[d])))))<$fround(A.Exp(-0.5*e*e))){$s=12;continue;}$s=13;continue;case 12:return e;case 13:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L.ptr.prototype.NormFloat64};}$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;};L.prototype.NormFloat64=function(){return this.$val.NormFloat64();};K=function(a){var $ptr,a,b;b=new AD.ptr(0,0,AH.zero());b.Seed(a);return b;};$pkg.NewSource=K;M=function(a){var $ptr,a;return new L.ptr(a);};$pkg.New=M;L.ptr.prototype.Seed=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.src.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Seed};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Seed=function(a){return this.$val.Seed(a);};L.ptr.prototype.Int63=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.src.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Int63=function(){return this.$val.Int63();};L.ptr.prototype.Uint32=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.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return($shiftRightInt64(b,31).$low>>>0);}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Uint32=function(){return this.$val.Uint32();};L.ptr.prototype.Int31=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.Int63();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return((b=$shiftRightInt64(c,32),b.$low+((b.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Int31};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Int31=function(){return this.$val.Int31();};L.ptr.prototype.Int=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.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=(b.$low>>>0);return(((c<<1>>>0)>>>1>>>0)>>0);}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Int};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Int=function(){return this.$val.Int();};L.ptr.prototype.Int63n=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;if((a.$high<0||(a.$high===0&&a.$low<=0))){$panic(new $String("invalid argument to Int63n"));}if((c=(d=new $Int64(a.$high-0,a.$low-1),new $Int64(a.$high&d.$high,(a.$low&d.$low)>>>0)),(c.$high===0&&c.$low===0))){$s=1;continue;}$s=2;continue;case 1:f=b.Int63();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=4;case 4:return(e=f,g=new $Int64(a.$high-0,a.$low-1),new $Int64(e.$high&g.$high,(e.$low&g.$low)>>>0));case 2:j=(h=(i=$div64(new $Uint64(2147483648,0),new $Uint64(a.$high,a.$low),true),new $Uint64(2147483647-i.$high,4294967295-i.$low)),new $Int64(h.$high,h.$low));k=b.Int63();$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;case 6:if(!((l.$high>j.$high||(l.$high===j.$high&&l.$low>j.$low)))){$s=7;continue;}m=b.Int63();$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;$s=6;continue;case 7:return $div64(l,a,true);}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Int63n};}$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;};L.prototype.Int63n=function(a){return this.$val.Int63n(a);};L.ptr.prototype.Int31n=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=this;if(a<=0){$panic(new $String("invalid argument to Int31n"));}if((a&((a-1>>0)))===0){$s=1;continue;}$s=2;continue;case 1:c=b.Int31();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c&((a-1>>0));case 2:e=((2147483647-(d=2147483648%(a>>>0),d===d?d:$throwRuntimeError("integer divide by zero"))>>>0)>>0);f=b.Int31();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;case 6:if(!(g>e)){$s=7;continue;}h=b.Int31();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$s=6;continue;case 7:return(i=g%a,i===i?i:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Int31n};}$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;};L.prototype.Int31n=function(a){return this.$val.Int31n(a);};L.ptr.prototype.Intn=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;if(a<=0){$panic(new $String("invalid argument to Intn"));}if(a<=2147483647){$s=1;continue;}$s=2;continue;case 1:c=b.Int31n((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return(c>>0);case 2:e=b.Int63n(new $Int64(0,a));$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=6;case 6:return((d=e,d.$low+((d.$high>>31)*4294967296))>>0);}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Intn};}$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.prototype.Intn=function(a){return this.$val.Intn(a);};L.ptr.prototype.Float64=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.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$flatten64(b)/9.223372036854776e+18;if(c===1){c=0;}return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Float64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Float64=function(){return this.$val.Float64();};L.ptr.prototype.Float32=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.Float64();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$fround(b);if(c===1){c=0;}return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Float32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Float32=function(){return this.$val.Float32();};L.ptr.prototype.Perm=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=$makeSlice(AI,a);d=0;case 1:if(!(d>0);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=((f<0||f>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+f]));((f<0||f>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+f]=d);d=d+(1)>>0;$s=1;continue;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Perm};}$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;};L.prototype.Perm=function(a){return this.$val.Perm(a);};AB.ptr.prototype.Int63=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=new $Int64(0,0);b=this;b.lk.Lock();c=b.src.Int63();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a=c;b.lk.Unlock();return a;}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Int63};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Int63=function(){return this.$val.Int63();};AB.ptr.prototype.Seed=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;b.lk.Lock();$r=b.src.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.lk.Unlock();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Seed};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AB.prototype.Seed=function(a){return this.$val.Seed(a);};AE=function(a){var $ptr,a,b,c,d,e;c=(b=a/44488,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));e=(d=a%44488,d===d?d:$throwRuntimeError("integer divide by zero"));a=($imul(48271,e))-($imul(3399,c))>>0;if(a<0){a=a+(2147483647)>>0;}return a;};AD.ptr.prototype.Seed=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=this;b.tap=0;b.feed=334;a=$div64(a,new $Int64(0,2147483647),true);if((a.$high<0||(a.$high===0&&a.$low<0))){a=(c=new $Int64(0,2147483647),new $Int64(a.$high+c.$high,a.$low+c.$low));}if((a.$high===0&&a.$low===0)){a=new $Int64(0,89482311);}d=((a.$low+((a.$high>>31)*4294967296))>>0);e=-20;while(true){if(!(e<607)){break;}d=AE(d);if(e>=0){f=new $Int64(0,0);f=$shiftLeft64(new $Int64(0,d),40);d=AE(d);f=(g=$shiftLeft64(new $Int64(0,d),20),new $Int64(f.$high^g.$high,(f.$low^g.$low)>>>0));d=AE(d);f=(h=new $Int64(0,d),new $Int64(f.$high^h.$high,(f.$low^h.$low)>>>0));f=(i=((e<0||e>=AC.length)?$throwRuntimeError("index out of range"):AC[e]),new $Int64(f.$high^i.$high,(f.$low^i.$low)>>>0));(j=b.vec,((e<0||e>=j.length)?$throwRuntimeError("index out of range"):j[e]=new $Int64(f.$high&2147483647,(f.$low&4294967295)>>>0)));}e=e+(1)>>0;}};AD.prototype.Seed=function(a){return this.$val.Seed(a);};AD.ptr.prototype.Int63=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=this;a.tap=a.tap-(1)>>0;if(a.tap<0){a.tap=a.tap+(607)>>0;}a.feed=a.feed-(1)>>0;if(a.feed<0){a.feed=a.feed+(607)>>0;}i=(b=(c=(d=a.vec,e=a.feed,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e])),f=(g=a.vec,h=a.tap,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h])),new $Int64(c.$high+f.$high,c.$low+f.$low)),new $Int64(b.$high&2147483647,(b.$low&4294967295)>>>0));(j=a.vec,k=a.feed,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=i));return i;};AD.prototype.Int63=function(){return this.$val.Int63();};AJ.methods=[{prop:"ExpFloat64",name:"ExpFloat64",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"NormFloat64",name:"NormFloat64",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Int31",name:"Int31",pkg:"",typ:$funcType([],[$Int32],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int63n",name:"Int63n",pkg:"",typ:$funcType([$Int64],[$Int64],false)},{prop:"Int31n",name:"Int31n",pkg:"",typ:$funcType([$Int32],[$Int32],false)},{prop:"Intn",name:"Intn",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Float32",name:"Float32",pkg:"",typ:$funcType([],[$Float32],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([$Int],[AI],false)}];AL.methods=[{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)}];AM.methods=[{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)}];J.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)}]);L.init([{prop:"src",name:"src",pkg:"math/rand",typ:J,tag:""}]);AB.init([{prop:"lk",name:"lk",pkg:"math/rand",typ:B.Mutex,tag:""},{prop:"src",name:"src",pkg:"math/rand",typ:J,tag:""}]);AD.init([{prop:"tap",name:"tap",pkg:"math/rand",typ:$Int,tag:""},{prop:"feed",name:"feed",pkg:"math/rand",typ:$Int,tag:""},{prop:"vec",name:"vec",pkg:"math/rand",typ:AH,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;}C=$toNativeArray($kindUint32,[3801129273,0,2615860924,3279400049,3571300752,3733536696,3836274812,3906990442,3958562475,3997804264,4028649213,4053523342,4074002619,4091154507,4105727352,4118261130,4129155133,4138710916,4147160435,4154685009,4161428406,4167506077,4173011791,4178022498,4182601930,4186803325,4190671498,4194244443,4197554582,4200629752,4203493986,4206168142,4208670408,4211016720,4213221098,4215295924,4217252177,4219099625,4220846988,4222502074,4224071896,4225562770,4226980400,4228329951,4229616109,4230843138,4232014925,4233135020,4234206673,4235232866,4236216336,4237159604,4238064994,4238934652,4239770563,4240574564,4241348362,4242093539,4242811568,4243503822,4244171579,4244816032,4245438297,4246039419,4246620374,4247182079,4247725394,4248251127,4248760037,4249252839,4249730206,4250192773,4250641138,4251075867,4251497493,4251906522,4252303431,4252688672,4253062674,4253425844,4253778565,4254121205,4254454110,4254777611,4255092022,4255397640,4255694750,4255983622,4256264513,4256537670,4256803325,4257061702,4257313014,4257557464,4257795244,4258026541,4258251531,4258470383,4258683258,4258890309,4259091685,4259287526,4259477966,4259663135,4259843154,4260018142,4260188212,4260353470,4260514019,4260669958,4260821380,4260968374,4261111028,4261249421,4261383632,4261513736,4261639802,4261761900,4261880092,4261994441,4262105003,4262211835,4262314988,4262414513,4262510454,4262602857,4262691764,4262777212,4262859239,4262937878,4263013162,4263085118,4263153776,4263219158,4263281289,4263340187,4263395872,4263448358,4263497660,4263543789,4263586755,4263626565,4263663224,4263696735,4263727099,4263754314,4263778377,4263799282,4263817020,4263831582,4263842955,4263851124,4263856071,4263857776,4263856218,4263851370,4263843206,4263831695,4263816804,4263798497,4263776735,4263751476,4263722676,4263690284,4263654251,4263614520,4263571032,4263523724,4263472530,4263417377,4263358192,4263294892,4263227394,4263155608,4263079437,4262998781,4262913534,4262823581,4262728804,4262629075,4262524261,4262414220,4262298801,4262177846,4262051187,4261918645,4261780032,4261635148,4261483780,4261325704,4261160681,4260988457,4260808763,4260621313,4260425802,4260221905,4260009277,4259787550,4259556329,4259315195,4259063697,4258801357,4258527656,4258242044,4257943926,4257632664,4257307571,4256967906,4256612870,4256241598,4255853155,4255446525,4255020608,4254574202,4254106002,4253614578,4253098370,4252555662,4251984571,4251383021,4250748722,4250079132,4249371435,4248622490,4247828790,4246986404,4246090910,4245137315,4244119963,4243032411,4241867296,4240616155,4239269214,4237815118,4236240596,4234530035,4232664930,4230623176,4228378137,4225897409,4223141146,4220059768,4216590757,4212654085,4208145538,4202926710,4196809522,4189531420,4180713890,4169789475,4155865042,4137444620,4111806704,4073393724,4008685917,3873074895]);D=$toNativeArray($kindFloat32,[2.0249555365836613e-09,1.4866739783681027e-11,2.4409616689036184e-11,3.1968806074589295e-11,3.844677007314168e-11,4.42282044321729e-11,4.951644302919611e-11,5.443358958023836e-11,5.905943789574764e-11,6.34494193296753e-11,6.764381416113352e-11,7.167294535648239e-11,7.556032188826833e-11,7.932458162551725e-11,8.298078890689453e-11,8.654132271912474e-11,9.001651507523079e-11,9.341507428706208e-11,9.674443190998971e-11,1.0001099254308699e-10,1.0322031424037093e-10,1.0637725422757427e-10,1.0948611461891744e-10,1.1255067711157807e-10,1.1557434870246297e-10,1.1856014781042035e-10,1.2151082917633005e-10,1.2442885610752796e-10,1.2731647680563896e-10,1.3017574518325858e-10,1.330085347417409e-10,1.3581656632677408e-10,1.386014220061682e-10,1.413645728254309e-10,1.4410737880776736e-10,1.4683107507629245e-10,1.4953686899854546e-10,1.522258291641876e-10,1.5489899640730442e-10,1.575573282952547e-10,1.6020171300645814e-10,1.628330109637588e-10,1.6545202707884954e-10,1.68059510752272e-10,1.7065616975120435e-10,1.73242697965037e-10,1.758197337720091e-10,1.783878739169964e-10,1.8094774290045024e-10,1.834998542005195e-10,1.8604476292871652e-10,1.8858298256319017e-10,1.9111498494872592e-10,1.9364125580789704e-10,1.9616222535212557e-10,1.9867835154840918e-10,2.011900368525943e-10,2.0369768372052732e-10,2.062016807302669e-10,2.0870240258208383e-10,2.1120022397624894e-10,2.136955057352452e-10,2.1618855317040442e-10,2.1867974098199738e-10,2.2116936060356807e-10,2.2365774510202385e-10,2.2614519978869652e-10,2.2863201609713002e-10,2.3111849933865614e-10,2.3360494094681883e-10,2.3609159072179864e-10,2.3857874009713953e-10,2.4106666662859766e-10,2.4355562011635357e-10,2.460458781161634e-10,2.485376904282077e-10,2.5103127909709144e-10,2.5352694943414633e-10,2.560248957284017e-10,2.585253955356137e-10,2.610286709003873e-10,2.6353494386732734e-10,2.6604446423661443e-10,2.6855745405285347e-10,2.71074163116225e-10,2.7359478571575835e-10,2.7611959940720965e-10,2.786487707240326e-10,2.8118254946640775e-10,2.8372118543451563e-10,2.8626484516180994e-10,2.8881380620404684e-10,2.9136826285025563e-10,2.9392840938946563e-10,2.96494523377433e-10,2.990667713476114e-10,3.016454031001814e-10,3.042306406797479e-10,3.068226783753403e-10,3.09421765987139e-10,3.12028125559749e-10,3.1464195138219964e-10,3.17263521010247e-10,3.1989300097734485e-10,3.225306410836737e-10,3.2517669112941405e-10,3.2783134540359526e-10,3.3049485370639786e-10,3.3316743808242677e-10,3.3584937608743815e-10,3.385408342548857e-10,3.4124211789610115e-10,3.4395342130011386e-10,3.4667499426710435e-10,3.494071143528288e-10,3.521500313574677e-10,3.54903967325626e-10,3.576691720574843e-10,3.6044595086437425e-10,3.632345535464765e-10,3.660352021483959e-10,3.688482297370399e-10,3.716738583570134e-10,3.7451239331964814e-10,3.773641121807003e-10,3.802292924959261e-10,3.831082673322328e-10,3.8600128648980103e-10,3.8890865527996255e-10,3.9183070676962473e-10,3.9476774627011935e-10,3.977200790927782e-10,4.006880383045086e-10,4.0367195697221803e-10,4.066721681628138e-10,4.0968900494320337e-10,4.127228558914453e-10,4.15774054074447e-10,4.188429603146915e-10,4.2192993543466173e-10,4.25035395767992e-10,4.2815970213716525e-10,4.313032986313914e-10,4.3446651831757777e-10,4.376498607960855e-10,4.408536868893975e-10,4.4407846844229937e-10,4.4732464954400086e-10,4.5059267428371186e-10,4.538830145062178e-10,4.5719619756745544e-10,4.605326675566346e-10,4.638929240741163e-10,4.672775499869886e-10,4.706869893844612e-10,4.74121908400349e-10,4.775827511238617e-10,4.810701836888143e-10,4.845848167178701e-10,4.881271498113904e-10,4.916979601254923e-10,4.952977472605369e-10,4.989272883726414e-10,5.025872495956207e-10,5.062783525744408e-10,5.100013189540675e-10,5.13756870379467e-10,5.175458395179078e-10,5.21369003525507e-10,5.252272505806843e-10,5.29121357839557e-10,5.330522134805449e-10,5.3702081670437e-10,5.41028055689452e-10,5.450749851476644e-10,5.491624932574268e-10,5.532918012640664e-10,5.574638528571541e-10,5.616799247931681e-10,5.659410717839819e-10,5.702485705860738e-10,5.746036979559221e-10,5.790077306500052e-10,5.83462111958255e-10,5.879682296594524e-10,5.925275825546805e-10,5.971417249561739e-10,6.01812211176167e-10,6.065408175714992e-10,6.113292094767075e-10,6.16179329782085e-10,6.21092954844471e-10,6.260721940876124e-10,6.311191569352559e-10,6.362359528111483e-10,6.414249686947926e-10,6.466885360545405e-10,6.520292639144998e-10,6.574497612987784e-10,6.629528592760892e-10,6.685415554485985e-10,6.742187919073217e-10,6.799880103436351e-10,6.858525969377638e-10,6.918161599145378e-10,6.978825850545434e-10,7.040559801829716e-10,7.103406751696184e-10,7.167412219288849e-10,7.232625609532306e-10,7.2990985477972e-10,7.366885990123251e-10,7.436047333442275e-10,7.506645305355164e-10,7.57874762946642e-10,7.652426470272644e-10,7.727759543385559e-10,7.804830115532013e-10,7.883728114777e-10,7.964550685635174e-10,8.047402189070851e-10,8.132396422944055e-10,8.219657177122031e-10,8.309318788590758e-10,8.401527806789488e-10,8.496445214056791e-10,8.594246980742071e-10,8.695127395874636e-10,8.799300732498239e-10,8.90700457834015e-10,9.01850316648023e-10,9.134091816243028e-10,9.254100818978372e-10,9.37890431984556e-10,9.508922538259412e-10,9.64463842123564e-10,9.78660263939446e-10,9.935448019859905e-10,1.0091912860943353e-09,1.0256859805934937e-09,1.0431305819125214e-09,1.0616465484503124e-09,1.0813799855569073e-09,1.1025096391392708e-09,1.1252564435793033e-09,1.149898620766976e-09,1.176793218427008e-09,1.2064089727203964e-09,1.2393785997488749e-09,1.2765849488616254e-09,1.319313880365769e-09,1.36954347862428e-09,1.4305497897382224e-09,1.5083649884672923e-09,1.6160853766322703e-09,1.7921247819074893e-09]);E=$toNativeArray($kindFloat32,[1,0.9381436705589294,0.900469958782196,0.8717043399810791,0.847785472869873,0.8269932866096497,0.8084216713905334,0.7915276288986206,0.7759568691253662,0.7614634037017822,0.7478685975074768,0.7350381016731262,0.7228676676750183,0.7112747430801392,0.7001926302909851,0.6895664930343628,0.6793505549430847,0.669506311416626,0.6600008606910706,0.6508058309555054,0.6418967247009277,0.633251965045929,0.62485271692276,0.6166821718215942,0.608725368976593,0.6009689569473267,0.5934008955955505,0.5860103368759155,0.5787873864173889,0.5717230439186096,0.5648092031478882,0.5580382943153381,0.5514034032821655,0.5448982119560242,0.5385168790817261,0.5322538614273071,0.526104211807251,0.5200631618499756,0.5141264200210571,0.5082897543907166,0.5025495290756226,0.4969019889831543,0.4913438558578491,0.4858720004558563,0.48048335313796997,0.4751752018928528,0.4699448347091675,0.4647897481918335,0.4597076177597046,0.4546961486339569,0.4497532546520233,0.44487687945365906,0.4400651156902313,0.4353161156177521,0.4306281507015228,0.42599955201148987,0.42142874002456665,0.4169141948223114,0.4124544560909271,0.40804818272590637,0.4036940038204193,0.39939069747924805,0.3951369822025299,0.39093172550201416,0.38677382469177246,0.38266217708587646,0.378595769405365,0.37457355856895447,0.37059465050697327,0.366658091545105,0.362762987613678,0.358908474445343,0.35509374737739563,0.35131800174713135,0.3475804924964905,0.34388044476509094,0.34021714329719543,0.33658990263938904,0.3329980671405792,0.3294409513473511,0.32591795921325684,0.32242849469184875,0.3189719021320343,0.3155476748943329,0.31215524673461914,0.3087940812110901,0.30546361207962036,0.30216339230537415,0.29889291524887085,0.29565170407295227,0.2924392819404602,0.2892552316188812,0.28609907627105713,0.2829704284667969,0.27986884117126465,0.2767939269542694,0.2737452983856201,0.2707225978374481,0.26772540807724,0.26475343108177185,0.2618062496185303,0.258883535861969,0.2559850215911865,0.25311028957366943,0.25025907158851624,0.24743106961250305,0.2446259707212448,0.24184346199035645,0.23908329010009766,0.23634515702724457,0.2336287796497345,0.23093391954898834,0.22826029360294342,0.22560766339302063,0.22297576069831848,0.22036437690258026,0.21777324378490448,0.21520215272903442,0.212650865316391,0.21011915802955627,0.20760682225227356,0.20511364936828613,0.20263944566249847,0.20018397271633148,0.19774706661701202,0.1953285187482834,0.19292815029621124,0.19054576754570007,0.18818120658397675,0.18583425879478455,0.18350479006767273,0.18119260668754578,0.17889754474163055,0.17661945521831512,0.17435817420482635,0.1721135377883911,0.16988539695739746,0.16767361760139465,0.16547803580760956,0.16329853236675262,0.16113494336605072,0.1589871346950531,0.15685498714447021,0.15473836660385132,0.15263713896274567,0.1505511850118637,0.1484803706407547,0.14642459154129028,0.1443837285041809,0.14235764741897583,0.1403462439775467,0.13834942877292633,0.136367067694664,0.13439907133579254,0.1324453204870224,0.1305057406425476,0.12858019769191742,0.12666863203048706,0.12477091699838638,0.12288697808980942,0.1210167184472084,0.11916005611419678,0.11731690168380737,0.11548716574907303,0.11367076635360718,0.11186762899160385,0.11007767915725708,0.1083008274435997,0.10653700679540634,0.10478614270687103,0.1030481606721878,0.10132300108671188,0.0996105819940567,0.09791085124015808,0.09622374176979065,0.09454918652772903,0.09288713335990906,0.09123751521110535,0.08960027992725372,0.08797537535429001,0.08636274188756943,0.0847623273730278,0.08317409455776215,0.08159798383712769,0.08003395050764084,0.07848194986581802,0.07694194465875626,0.07541389018297195,0.07389774918556213,0.07239348441362381,0.070901058614254,0.06942043453454971,0.06795158982276917,0.06649449467658997,0.06504911929368973,0.06361543387174606,0.06219341605901718,0.06078304722905159,0.0593843050301075,0.05799717456102371,0.05662164092063904,0.05525768920779228,0.05390531197190285,0.05256449431180954,0.05123523622751236,0.04991753399372101,0.04861138388514519,0.047316793352365494,0.04603376239538193,0.044762298464775085,0.04350241273641586,0.04225412383675575,0.04101744294166565,0.039792392402887344,0.03857899457216263,0.03737728297710419,0.03618728369474411,0.03500903770327568,0.03384258225560188,0.0326879620552063,0.031545232981443405,0.030414443463087082,0.0292956605553627,0.028188949450850487,0.027094384655356407,0.02601204626262188,0.024942025542259216,0.023884421214461327,0.022839335724711418,0.021806888282299042,0.020787203684449196,0.019780423492193222,0.018786700442433357,0.017806200310587883,0.016839107498526573,0.015885621309280396,0.014945968054234982,0.01402039173990488,0.013109165243804455,0.012212592177093029,0.011331013403832912,0.010464809834957123,0.009614413604140282,0.008780314587056637,0.007963077165186405,0.007163353264331818,0.0063819061033427715,0.005619642324745655,0.004877655766904354,0.004157294984906912,0.003460264764726162,0.0027887988835573196,0.0021459676790982485,0.001536299823783338,0.0009672692976891994,0.0004541343660093844]);G=$toNativeArray($kindUint32,[1991057938,0,1611602771,1826899878,1918584482,1969227037,2001281515,2023368125,2039498179,2051788381,2061460127,2069267110,2075699398,2081089314,2085670119,2089610331,2093034710,2096037586,2098691595,2101053571,2103168620,2105072996,2106796166,2108362327,2109791536,2111100552,2112303493,2113412330,2114437283,2115387130,2116269447,2117090813,2117856962,2118572919,2119243101,2119871411,2120461303,2121015852,2121537798,2122029592,2122493434,2122931299,2123344971,2123736059,2124106020,2124456175,2124787725,2125101763,2125399283,2125681194,2125948325,2126201433,2126441213,2126668298,2126883268,2127086657,2127278949,2127460589,2127631985,2127793506,2127945490,2128088244,2128222044,2128347141,2128463758,2128572095,2128672327,2128764606,2128849065,2128925811,2128994934,2129056501,2129110560,2129157136,2129196237,2129227847,2129251929,2129268426,2129277255,2129278312,2129271467,2129256561,2129233410,2129201800,2129161480,2129112170,2129053545,2128985244,2128906855,2128817916,2128717911,2128606255,2128482298,2128345305,2128194452,2128028813,2127847342,2127648860,2127432031,2127195339,2126937058,2126655214,2126347546,2126011445,2125643893,2125241376,2124799783,2124314271,2123779094,2123187386,2122530867,2121799464,2120980787,2120059418,2119015917,2117825402,2116455471,2114863093,2112989789,2110753906,2108037662,2104664315,2100355223,2094642347,2086670106,2074676188,2054300022,2010539237]);H=$toNativeArray($kindFloat32,[1.7290404663583558e-09,1.2680928529462676e-10,1.689751810696194e-10,1.9862687883343e-10,2.223243117382978e-10,2.4244936613904144e-10,2.601613091623989e-10,2.761198769629658e-10,2.9073962681813725e-10,3.042996965518796e-10,3.169979556627567e-10,3.289802041894774e-10,3.4035738116777736e-10,3.5121602848242617e-10,3.61625090983253e-10,3.7164057942185025e-10,3.813085680537398e-10,3.906675816178762e-10,3.997501218933053e-10,4.0858399996679395e-10,4.1719308563337165e-10,4.255982233303257e-10,4.3381759295968436e-10,4.4186720948857783e-10,4.497613115272969e-10,4.57512583373898e-10,4.6513240481438345e-10,4.726310454117311e-10,4.800177477726209e-10,4.873009773476156e-10,4.944885056978876e-10,5.015873272284921e-10,5.086040477664255e-10,5.155446070048697e-10,5.224146670812502e-10,5.292193350214802e-10,5.359634958068682e-10,5.426517013518151e-10,5.492881705038144e-10,5.558769555769061e-10,5.624218868405251e-10,5.689264614971989e-10,5.75394121238304e-10,5.818281967329142e-10,5.882316855831959e-10,5.946076964136182e-10,6.009590047817426e-10,6.072883862451306e-10,6.135985053390414e-10,6.19892026598734e-10,6.261713370037114e-10,6.324390455780815e-10,6.386973727678935e-10,6.449488165749528e-10,6.511955974453087e-10,6.574400468473129e-10,6.636843297158634e-10,6.699307220081607e-10,6.761814441702541e-10,6.824387166481927e-10,6.887046488657234e-10,6.949815167800466e-10,7.012714853260604e-10,7.075767749498141e-10,7.13899661608508e-10,7.202424212593428e-10,7.266072743483676e-10,7.329966078550854e-10,7.394128087589991e-10,7.458582640396116e-10,7.523354716987285e-10,7.588469852493063e-10,7.653954137154528e-10,7.719834771435785e-10,7.786139510912449e-10,7.852897221383159e-10,7.920137878869582e-10,7.987892014504894e-10,8.056192379868321e-10,8.125072836762115e-10,8.194568912323064e-10,8.264716688799467e-10,8.3355555791087e-10,8.407127216614185e-10,8.479473234679347e-10,8.552640262671218e-10,8.626675485068347e-10,8.701631637464402e-10,8.777562010564566e-10,8.854524335966119e-10,8.932581896381464e-10,9.011799639857543e-10,9.092249730890956e-10,9.174008219758889e-10,9.25715837318819e-10,9.341788453909317e-10,9.42799727177146e-10,9.515889187738935e-10,9.605578554783278e-10,9.697193048552322e-10,9.790869226478094e-10,9.886760299337993e-10,9.985036131254788e-10,1.008588212947359e-09,1.0189509236369076e-09,1.0296150598776421e-09,1.040606933955246e-09,1.0519566329136865e-09,1.0636980185552147e-09,1.0758701707302976e-09,1.0885182755160372e-09,1.101694735439196e-09,1.115461056855338e-09,1.1298901814171813e-09,1.1450695946990663e-09,1.1611052119775422e-09,1.178127595480305e-09,1.1962995039027646e-09,1.2158286599728285e-09,1.2369856250415978e-09,1.2601323318151003e-09,1.2857697129220469e-09,1.3146201904845611e-09,1.3477839955200466e-09,1.3870635751089821e-09,1.43574030442295e-09,1.5008658760251592e-09,1.6030947680434338e-09]);I=$toNativeArray($kindFloat32,[1,0.963599681854248,0.9362826943397522,0.9130436182022095,0.8922816514968872,0.8732430338859558,0.8555005788803101,0.8387836217880249,0.8229072093963623,0.8077383041381836,0.7931770086288452,0.7791460752487183,0.7655841708183289,0.7524415850639343,0.7396772503852844,0.7272568941116333,0.7151514887809753,0.7033361196517944,0.6917891502380371,0.6804918646812439,0.6694276928901672,0.6585819721221924,0.6479418277740479,0.6374954581260681,0.6272324919700623,0.6171433925628662,0.6072195172309875,0.5974531769752502,0.5878370404243469,0.5783646702766418,0.5690299868583679,0.5598273873329163,0.550751805305481,0.5417983531951904,0.5329626798629761,0.5242405533790588,0.5156282186508179,0.5071220397949219,0.49871864914894104,0.4904148280620575,0.48220765590667725,0.47409430146217346,0.466072142124176,0.45813870429992676,0.45029163360595703,0.44252872467041016,0.4348478317260742,0.42724698781967163,0.41972434520721436,0.41227802634239197,0.40490642189979553,0.39760786294937134,0.3903807997703552,0.3832238018512726,0.3761354684829712,0.3691144585609436,0.36215949058532715,0.3552693724632263,0.3484429717063904,0.3416791558265686,0.33497685194015503,0.32833510637283325,0.3217529058456421,0.3152293860912323,0.30876362323760986,0.3023548424243927,0.2960021495819092,0.2897048592567444,0.28346219658851624,0.2772735059261322,0.271138072013855,0.2650552988052368,0.25902456045150757,0.25304529070854187,0.24711695313453674,0.24123899638652802,0.23541094362735748,0.22963231801986694,0.22390270233154297,0.21822164952754974,0.21258877217769623,0.20700371265411377,0.20146611332893372,0.1959756463766098,0.19053204357624054,0.18513499200344086,0.17978426814079285,0.1744796335697174,0.16922089457511902,0.16400785744190216,0.1588403731584549,0.15371830761432648,0.14864157140254974,0.14361007511615753,0.13862377405166626,0.13368265330791473,0.12878671288490295,0.12393598258495331,0.11913054436445236,0.11437050998210907,0.10965602099895477,0.1049872562289238,0.10036443918943405,0.09578784555196762,0.09125780314207077,0.08677466958761215,0.08233889937400818,0.07795098423957825,0.07361150532960892,0.06932111829519272,0.06508058309555054,0.06089077144861221,0.05675266310572624,0.05266740173101425,0.048636294901371,0.044660862535238266,0.040742866694927216,0.03688438981771469,0.03308788686990738,0.029356317594647408,0.025693291798233986,0.02210330404341221,0.018592102453112602,0.015167297795414925,0.011839478276669979,0.0086244847625494,0.005548994988203049,0.0026696291752159595]);AC=$toNativeArray($kindInt64,[new $Int64(1173834291,3952672746),new $Int64(1081821761,3130416987),new $Int64(324977939,3414273807),new $Int64(1241840476,2806224363),new $Int64(669549340,1997590414),new $Int64(2103305448,2402795971),new $Int64(1663160183,1140819369),new $Int64(1120601685,1788868961),new $Int64(1848035537,1089001426),new $Int64(1235702047,873593504),new $Int64(1911387977,581324885),new $Int64(492609478,1609182556),new $Int64(1069394745,1241596776),new $Int64(1895445337,1771189259),new $Int64(772864846,3467012610),new $Int64(2006957225,2344407434),new $Int64(402115761,782467244),new $Int64(26335124,3404933915),new $Int64(1063924276,618867887),new $Int64(1178782866,520164395),new $Int64(555910815,1341358184),new $Int64(632398609,665794848),new $Int64(1527227641,3183648150),new $Int64(1781176124,696329606),new $Int64(1789146075,4151988961),new $Int64(60039534,998951326),new $Int64(1535158725,1364957564),new $Int64(63173359,4090230633),new $Int64(649454641,4009697548),new $Int64(248009524,2569622517),new $Int64(778703922,3742421481),new $Int64(1038377625,1506914633),new $Int64(1738099768,1983412561),new $Int64(236311649,1436266083),new $Int64(1035966148,3922894967),new $Int64(810508934,1792680179),new $Int64(563141142,1188796351),new $Int64(1349617468,405968250),new $Int64(1044074554,433754187),new $Int64(870549669,4073162024),new $Int64(1053232044,433121399),new $Int64(2451824,4162580594),new $Int64(2010221076,4132415622),new $Int64(611252600,3033822028),new $Int64(2016407895,824682382),new $Int64(2366218,3583765414),new $Int64(1522878809,535386927),new $Int64(1637219058,2286693689),new $Int64(1453075389,2968466525),new $Int64(193683513,1351410206),new $Int64(1863677552,1412813499),new $Int64(492736522,4126267639),new $Int64(512765208,2105529399),new $Int64(2132966268,2413882233),new $Int64(947457634,32226200),new $Int64(1149341356,2032329073),new $Int64(106485445,1356518208),new $Int64(79673492,3430061722),new $Int64(663048513,3820169661),new $Int64(481498454,2981816134),new $Int64(1017155588,4184371017),new $Int64(206574701,2119206761),new $Int64(1295374591,2472200560),new $Int64(1587026100,2853524696),new $Int64(1307803389,1681119904),new $Int64(1972496813,95608918),new $Int64(392686347,3690479145),new $Int64(941912722,1397922290),new $Int64(988169623,1516129515),new $Int64(1827305493,1547420459),new $Int64(1311333971,1470949486),new $Int64(194013850,1336785672),new $Int64(2102397034,4131677129),new $Int64(755205548,4246329084),new $Int64(1004983461,3788585631),new $Int64(2081005363,3080389532),new $Int64(1501045284,2215402037),new $Int64(391002300,1171593935),new $Int64(1408774047,1423855166),new $Int64(1628305930,2276716302),new $Int64(1779030508,2068027241),new $Int64(1369359303,3427553297),new $Int64(189241615,3289637845),new $Int64(1057480830,3486407650),new $Int64(634572984,3071877822),new $Int64(1159653919,3363620705),new $Int64(1213226718,4159821533),new $Int64(2070861710,1894661),new $Int64(1472989750,1156868282),new $Int64(348271067,776219088),new $Int64(1646054810,2425634259),new $Int64(1716021749,680510161),new $Int64(1573220192,1310101429),new $Int64(1095885995,2964454134),new $Int64(1821788136,3467098407),new $Int64(1990672920,2109628894),new $Int64(7834944,1232604732),new $Int64(309412934,3261916179),new $Int64(1699175360,434597899),new $Int64(235436061,1624796439),new $Int64(521080809,3589632480),new $Int64(1198416575,864579159),new $Int64(208735487,1380889830),new $Int64(619206309,2654509477),new $Int64(1419738251,1468209306),new $Int64(403198876,100794388),new $Int64(956062190,2991674471),new $Int64(1938816907,2224662036),new $Int64(1973824487,977097250),new $Int64(1351320195,726419512),new $Int64(1964023751,1747974366),new $Int64(1394388465,1556430604),new $Int64(1097991433,1080776742),new $Int64(1761636690,280794874),new $Int64(117767733,919835643),new $Int64(1180474222,3434019658),new $Int64(196069168,2461941785),new $Int64(133215641,3615001066),new $Int64(417204809,3103414427),new $Int64(790056561,3380809712),new $Int64(879802240,2724693469),new $Int64(547796833,598827710),new $Int64(300924196,3452273442),new $Int64(2071705424,649274915),new $Int64(1346182319,2585724112),new $Int64(636549385,3165579553),new $Int64(1185578221,2635894283),new $Int64(2094573470,2053289721),new $Int64(985976581,3169337108),new $Int64(1170569632,144717764),new $Int64(1079216270,1383666384),new $Int64(2022678706,681540375),new $Int64(1375448925,537050586),new $Int64(182715304,315246468),new $Int64(226402871,849323088),new $Int64(1262421183,45543944),new $Int64(1201038398,2319052083),new $Int64(2106775454,3613090841),new $Int64(560472520,2992171180),new $Int64(1765620479,2068244785),new $Int64(917538188,4239862634),new $Int64(777927839,3892253031),new $Int64(720683925,958186149),new $Int64(1724185863,1877702262),new $Int64(1357886971,837674867),new $Int64(1837048883,1507589294),new $Int64(1905518400,873336795),new $Int64(267722611,2764496274),new $Int64(341003118,4196182374),new $Int64(1080717893,550964545),new $Int64(818747069,420611474),new $Int64(222653272,204265180),new $Int64(1549974541,1787046383),new $Int64(1215581865,3102292318),new $Int64(418321538,1552199393),new $Int64(1243493047,980542004),new $Int64(267284263,3293718720),new $Int64(1179528763,3771917473),new $Int64(599484404,2195808264),new $Int64(252818753,3894702887),new $Int64(780007692,2099949527),new $Int64(1424094358,338442522),new $Int64(490737398,637158004),new $Int64(419862118,281976339),new $Int64(574970164,3619802330),new $Int64(1715552825,3084554784),new $Int64(882872465,4129772886),new $Int64(43084605,1680378557),new $Int64(525521057,3339087776),new $Int64(1680500332,4220317857),new $Int64(211654685,2959322499),new $Int64(1675600481,1488354890),new $Int64(1312620086,3958162143),new $Int64(920972075,2773705983),new $Int64(1876039582,225908689),new $Int64(963748535,908216283),new $Int64(1541787429,3574646075),new $Int64(319760557,1936937569),new $Int64(1519770881,75492235),new $Int64(816689472,1935193178),new $Int64(2142521206,2018250883),new $Int64(455141620,3943126022),new $Int64(1546084160,3066544345),new $Int64(1932392669,2793082663),new $Int64(908474287,3297036421),new $Int64(1640597065,2206987825),new $Int64(1594236910,807894872),new $Int64(366158341,766252117),new $Int64(2060649606,3833114345),new $Int64(845619743,1255067973),new $Int64(1201145605,741697208),new $Int64(671241040,2810093753),new $Int64(1109032642,4229340371),new $Int64(1462188720,1361684224),new $Int64(988084219,1906263026),new $Int64(475781207,3904421704),new $Int64(1523946520,1769075545),new $Int64(1062308525,2621599764),new $Int64(1279509432,3431891480),new $Int64(404732502,1871896503),new $Int64(128756421,1412808876),new $Int64(1605404688,952876175),new $Int64(1917039957,1824438899),new $Int64(1662295856,1005035476),new $Int64(1990909507,527508597),new $Int64(1288873303,3066806859),new $Int64(565995893,3244940914),new $Int64(1257737460,209092916),new $Int64(1899814242,1242699167),new $Int64(1433653252,456723774),new $Int64(1776978905,1001252870),new $Int64(1468772157,2026725874),new $Int64(857254202,2137562569),new $Int64(765939740,3183366709),new $Int64(1533887628,2612072960),new $Int64(56977098,1727148468),new $Int64(949899753,3803658212),new $Int64(1883670356,479946959),new $Int64(685713571,1562982345),new $Int64(201241205,1766109365),new $Int64(700596547,3257093788),new $Int64(1962768719,2365720207),new $Int64(93384808,3742754173),new $Int64(1689098413,2878193673),new $Int64(1096135042,2174002182),new $Int64(1313222695,3573511231),new $Int64(1392911121,1760299077),new $Int64(771856457,2260779833),new $Int64(1281464374,1452805722),new $Int64(917811730,2940011802),new $Int64(1890251082,1886183802),new $Int64(893897673,2514369088),new $Int64(1644345561,3924317791),new $Int64(172616216,500935732),new $Int64(1403501753,676580929),new $Int64(581571365,1184984890),new $Int64(1455515235,1271474274),new $Int64(318728910,3163791473),new $Int64(2051027584,2842487377),new $Int64(1511537551,2170968612),new $Int64(573262976,3535856740),new $Int64(94256461,1488599718),new $Int64(966951817,3408913763),new $Int64(60951736,2501050084),new $Int64(1272353200,1639124157),new $Int64(138001144,4088176393),new $Int64(1574896563,3989947576),new $Int64(1982239940,3414355209),new $Int64(1355154361,2275136352),new $Int64(89709303,2151835223),new $Int64(1216338715,1654534827),new $Int64(1467562197,377892833),new $Int64(1664767638,660204544),new $Int64(85706799,390828249),new $Int64(725310955,3402783878),new $Int64(678849488,3717936603),new $Int64(1113532086,2211058823),new $Int64(1564224320,2692150867),new $Int64(1952770442,1928910388),new $Int64(788716862,3931011137),new $Int64(1083670504,1112701047),new $Int64(2079333076,2452299106),new $Int64(1251318826,2337204777),new $Int64(1774877857,273889282),new $Int64(1798719843,1462008793),new $Int64(2138834788,1554494002),new $Int64(952516517,182675323),new $Int64(548928884,1882802136),new $Int64(589279648,3700220025),new $Int64(381039426,3083431543),new $Int64(1295624457,3622207527),new $Int64(338126939,432729309),new $Int64(480013522,2391914317),new $Int64(297925497,235747924),new $Int64(2120733629,3088823825),new $Int64(1402403853,2314658321),new $Int64(1165929723,2957634338),new $Int64(501323675,4117056981),new $Int64(1564699815,1482500298),new $Int64(1406657158,840489337),new $Int64(799522364,3483178565),new $Int64(532129761,2074004656),new $Int64(724246478,3643392642),new $Int64(1482330167,1583624461),new $Int64(1261660694,287473085),new $Int64(1667835381,3136843981),new $Int64(1138806821,1266970974),new $Int64(135185781,1998688839),new $Int64(392094735,1492900209),new $Int64(1031326774,1538112737),new $Int64(76914806,2207265429),new $Int64(260686035,963263315),new $Int64(1671145500,2295892134),new $Int64(1068469660,2002560897),new $Int64(1791233343,1369254035),new $Int64(33436120,3353312708),new $Int64(57507843,947771099),new $Int64(201728503,1747061399),new $Int64(1507240140,2047354631),new $Int64(720000810,4165367136),new $Int64(479265078,3388864963),new $Int64(1195302398,286492130),new $Int64(2045622690,2795735007),new $Int64(1431753082,3703961339),new $Int64(1999047161,1797825479),new $Int64(1429039600,1116589674),new $Int64(482063550,2593309206),new $Int64(1329049334,3404995677),new $Int64(1396904208,3453462936),new $Int64(1014767077,3016498634),new $Int64(75698599,1650371545),new $Int64(1592007860,212344364),new $Int64(1127766888,3843932156),new $Int64(1399463792,3573129983),new $Int64(1256901817,665897820),new $Int64(1071492673,1675628772),new $Int64(243225682,2831752928),new $Int64(2120298836,1486294219),new $Int64(193076235,268782709),new $Int64(1145360145,4186179080),new $Int64(624342951,1613720397),new $Int64(857179861,2703686015),new $Int64(1235864944,2205342611),new $Int64(1474779655,1411666394),new $Int64(619028749,677744900),new $Int64(270855115,4172867247),new $Int64(135494707,2163418403),new $Int64(849547544,2841526879),new $Int64(1029966689,1082141470),new $Int64(377371856,4046134367),new $Int64(51415528,2142943655),new $Int64(1897659315,3124627521),new $Int64(998228909,219992939),new $Int64(1068692697,1756846531),new $Int64(1283749206,1225118210),new $Int64(1621625642,1647770243),new $Int64(111523943,444807907),new $Int64(2036369448,3952076173),new $Int64(53201823,1461839639),new $Int64(315761893,3699250910),new $Int64(702974850,1373688981),new $Int64(734022261,147523747),new $Int64(100152742,1211276581),new $Int64(1294440951,2548832680),new $Int64(1144696256,1995631888),new $Int64(154500578,2011457303),new $Int64(796460974,3057425772),new $Int64(667839456,81484597),new $Int64(465502760,3646681560),new $Int64(775020923,635548515),new $Int64(602489502,2508044581),new $Int64(353263531,1014917157),new $Int64(719992433,3214891315),new $Int64(852684611,959582252),new $Int64(226415134,3347040449),new $Int64(1784615552,4102971975),new $Int64(397887437,4078022210),new $Int64(1610679822,2851767182),new $Int64(749162636,1540160644),new $Int64(598384772,1057290595),new $Int64(2034890660,3907769253),new $Int64(579300318,4248952684),new $Int64(1092907599,132554364),new $Int64(1061621234,1029351092),new $Int64(697840928,2583007416),new $Int64(298619124,1486185789),new $Int64(55905697,2871589073),new $Int64(2017643612,723203291),new $Int64(146250550,2494333952),new $Int64(1064490251,2230939180),new $Int64(342915576,3943232912),new $Int64(1768732449,2181367922),new $Int64(1418222537,2889274791),new $Int64(1824032949,2046728161),new $Int64(1653899792,1376052477),new $Int64(1022327048,381236993),new $Int64(1034385958,3188942166),new $Int64(2073003539,350070824),new $Int64(144881592,61758415),new $Int64(1405659422,3492950336),new $Int64(117440928,3093818430),new $Int64(1693893113,2962480613),new $Int64(235432940,3154871160),new $Int64(511005079,3228564679),new $Int64(610731502,888276216),new $Int64(1200780674,3574998604),new $Int64(870415268,1967526716),new $Int64(591335707,1554691298),new $Int64(574459414,339944798),new $Int64(1223764147,1154515356),new $Int64(1825645307,967516237),new $Int64(1546195135,596588202),new $Int64(279882768,3764362170),new $Int64(492091056,266611402),new $Int64(1754227768,2047856075),new $Int64(1146757215,21444105),new $Int64(1198058894,3065563181),new $Int64(1915064845,1140663212),new $Int64(633187674,2323741028),new $Int64(2126290159,3103873707),new $Int64(1008658319,2766828349),new $Int64(1661896145,1970872996),new $Int64(1628585413,3766615585),new $Int64(1552335120,2036813414),new $Int64(152606527,3105536507),new $Int64(13954645,3396176938),new $Int64(1426081645,1377154485),new $Int64(2085644467,3807014186),new $Int64(543009040,3710110597),new $Int64(396058129,916420443),new $Int64(734556788,2103831255),new $Int64(381322154,717331943),new $Int64(572884752,3550505941),new $Int64(45939673,378749927),new $Int64(149867929,611017331),new $Int64(592130075,758907650),new $Int64(1012992349,154266815),new $Int64(1107028706,1407468696),new $Int64(469292398,970098704),new $Int64(1862426162,1971660656),new $Int64(998365243,3332747885),new $Int64(1947089649,1935189867),new $Int64(1510248801,203520055),new $Int64(842317902,3916463034),new $Int64(1758884993,3474113316),new $Int64(1036101639,316544223),new $Int64(373738757,1650844677),new $Int64(1240292229,4267565603),new $Int64(1077208624,2501167616),new $Int64(626831785,3929401789),new $Int64(56122796,337170252),new $Int64(1186981558,2061966842),new $Int64(1843292800,2508461464),new $Int64(206012532,2791377107),new $Int64(1240791848,1227227588),new $Int64(1813978778,1709681848),new $Int64(1153692192,3768820575),new $Int64(1145186199,2887126398),new $Int64(700372314,296561685),new $Int64(700300844,3729960077),new $Int64(575172304,372833036),new $Int64(2078875613,2409779288),new $Int64(1829161290,555274064),new $Int64(1041887929,4239804901),new $Int64(1839403216,3723486978),new $Int64(498390553,2145871984),new $Int64(564717933,3565480803),new $Int64(578829821,2197313814),new $Int64(974785092,3613674566),new $Int64(438638731,3042093666),new $Int64(2050927384,3324034321),new $Int64(869420878,3708873369),new $Int64(946682149,1698090092),new $Int64(1618900382,4213940712),new $Int64(304003901,2087477361),new $Int64(381315848,2407950639),new $Int64(851258090,3942568569),new $Int64(923583198,4088074412),new $Int64(723260036,2964773675),new $Int64(1473561819,1539178386),new $Int64(1062961552,2694849566),new $Int64(460977733,2120273838),new $Int64(542912908,2484608657),new $Int64(880846449,2956190677),new $Int64(1970902366,4223313749),new $Int64(662161910,3502682327),new $Int64(705634754,4133891139),new $Int64(1116124348,1166449596),new $Int64(1038247601,3362705993),new $Int64(93734798,3892921029),new $Int64(1876124043,786869787),new $Int64(1057490746,1046342263),new $Int64(242763728,493777327),new $Int64(1293910447,3304827646),new $Int64(616460742,125356352),new $Int64(499300063,74094113),new $Int64(1351896723,2500816079),new $Int64(1657235204,514015239),new $Int64(1377565129,543520454),new $Int64(107706923,3614531153),new $Int64(2056746300,2356753985),new $Int64(1390062617,2018141668),new $Int64(131272971,2087974891),new $Int64(644556607,3166972343),new $Int64(372256200,1517638666),new $Int64(1212207984,173466846),new $Int64(1451709187,4241513471),new $Int64(733932806,2783126920),new $Int64(1972004134,4167264826),new $Int64(29260506,3907395640),new $Int64(1236582087,1539634186),new $Int64(1551526350,178241987),new $Int64(2034206012,182168164),new $Int64(1044953189,2386154934),new $Int64(1379126408,4077374341),new $Int64(32803926,1732699140),new $Int64(1726425903,1041306002),new $Int64(1860414813,2068001749),new $Int64(1005320202,3208962910),new $Int64(844054010,697710380),new $Int64(638124245,2228431183),new $Int64(1337169671,3554678728),new $Int64(1396494601,173470263),new $Int64(2061597383,3848297795),new $Int64(1220546671,246236185),new $Int64(163293187,2066374846),new $Int64(1771673660,312890749),new $Int64(703378057,3573310289),new $Int64(1548631747,143166754),new $Int64(613554316,2081511079),new $Int64(1197802104,486038032),new $Int64(240999859,2982218564),new $Int64(364901986,1000939191),new $Int64(1902782651,2750454885),new $Int64(1475638791,3375313137),new $Int64(503615608,881302957),new $Int64(638698903,2514186393),new $Int64(443860803,360024739),new $Int64(1399671872,292500025),new $Int64(1381210821,2276300752),new $Int64(521803381,4069087683),new $Int64(208500981,1637778212),new $Int64(720490469,1676670893),new $Int64(1067262482,3855174429),new $Int64(2114075974,2067248671),new $Int64(2058057389,2884561259),new $Int64(1341742553,2456511185),new $Int64(983726246,561175414),new $Int64(427994085,432588903),new $Int64(885133709,4059399550),new $Int64(2054387382,1075014784),new $Int64(413651020,2728058415),new $Int64(1839142064,1299703678),new $Int64(1262333188,2347583393),new $Int64(1285481956,2468164145),new $Int64(989129637,1140014346),new $Int64(2033889184,1936972070),new $Int64(409904655,3870530098),new $Int64(1662989391,1717789158),new $Int64(1914486492,1153452491),new $Int64(1157059232,3948827651),new $Int64(790338018,2101413152),new $Int64(1495744672,3854091229),new $Int64(83644069,4215565463),new $Int64(762206335,1202710438),new $Int64(1582574611,2072216740),new $Int64(705690639,2066751068),new $Int64(33900336,173902580),new $Int64(1405499842,142459001),new $Int64(172391592,1889151926),new $Int64(1648540523,3034199774),new $Int64(1618587731,516490102),new $Int64(93114264,3692577783),new $Int64(68662295,2953948865),new $Int64(1826544975,4041040923),new $Int64(204965672,592046130),new $Int64(1441840008,384297211),new $Int64(95834184,265863924),new $Int64(2101717619,1333136237),new $Int64(1499611781,1406273556),new $Int64(1074670496,426305476),new $Int64(125704633,2750898176),new $Int64(488068495,1633944332),new $Int64(2037723464,3236349343),new $Int64(444060402,4013676611),new $Int64(1718532237,2265047407),new $Int64(1433593806,875071080),new $Int64(1804436145,1418843655),new $Int64(2009228711,451657300),new $Int64(1229446621,1866374663),new $Int64(1653472867,1551455622),new $Int64(577191481,3560962459),new $Int64(1669204077,3347903778),new $Int64(1849156454,2675874918),new $Int64(316128071,2762991672),new $Int64(530492383,3689068477),new $Int64(844089962,4071997905),new $Int64(1508155730,1381702441),new $Int64(2089931018,2373284878),new $Int64(1283216186,2143983064),new $Int64(308739063,1938207195),new $Int64(1754949306,1188152253),new $Int64(1272345009,615870490),new $Int64(742653194,2662252621),new $Int64(1477718295,3839976789),new $Int64(56149435,306752547),new $Int64(720795581,2162363077),new $Int64(2090431015,2767224719),new $Int64(675859549,2628837712),new $Int64(1678405918,2967771969),new $Int64(1694285728,499792248),new $Int64(403352367,4285253508),new $Int64(962357072,2856511070),new $Int64(679471692,2526409716),new $Int64(353777175,1240875658),new $Int64(1232590226,2577342868),new $Int64(1146185433,4136853496),new $Int64(670368674,2403540137),new $Int64(1372824515,1371410668),new $Int64(1970921600,371758825),new $Int64(1706420536,1528834084),new $Int64(2075795018,1504757260),new $Int64(685663576,699052551),new $Int64(1641940109,3347789870),new $Int64(1951619734,3430604759),new $Int64(2119672219,1935601723),new $Int64(966789690,834676166)]);N=M(new AB.ptr(new B.Mutex.ptr(false),K(new $Int64(0,1))));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/blocks/blocks"]=(function(){var $pkg={},$init,E,A,G,B,L,C,H,I,J,F,D,K,M,Q,R,T,AL,AO,AR,AS,AT,AV,BA,BB,BF,BG,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,V,W,X,Y,AI,AN,AP,AX,AY,BD,N,O,P,S,U,Z,AA,AB,AC,AD,AE,AF,AG,AH,AJ,AK,AM,AQ,AU,AW,AZ,BC,BE,BH,BI,BJ,BK;E=$packages["fmt"];A=$packages["github.com/hajimehoshi/ebiten"];G=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];B=$packages["github.com/hajimehoshi/ebiten/examples/common"];L=$packages["github.com/hajimehoshi/ebiten/exp/gamepad"];C=$packages["image/color"];H=$packages["image/jpeg"];I=$packages["math/rand"];J=$packages["strconv"];F=$packages["strings"];D=$packages["sync"];K=$packages["time"];M=$pkg.Field=$newType(0,$kindStruct,"blocks.Field","Field","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(blocks_,flushCount_,onEndFlushing_){this.$val=this;if(arguments.length===0){this.blocks=BS.zero();this.flushCount=0;this.onEndFlushing=$throwNilPointerError;return;}this.blocks=blocks_;this.flushCount=flushCount_;this.onEndFlushing=onEndFlushing_;});Q=$pkg.GameState=$newType(0,$kindStruct,"blocks.GameState","GameState","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(SceneManager_,Input_){this.$val=this;if(arguments.length===0){this.SceneManager=BX.nil;this.Input=CA.nil;return;}this.SceneManager=SceneManager_;this.Input=Input_;});R=$pkg.Game=$newType(0,$kindStruct,"blocks.Game","Game","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(once_,sceneManager_,input_){this.$val=this;if(arguments.length===0){this.once=new D.Once.ptr(new D.Mutex.ptr(0,0),0);this.sceneManager=BX.nil;this.input=new AO.ptr(BY.zero(),BY.zero(),BZ.zero(),new L.Configuration.ptr(0,false,false,false,false));return;}this.once=once_;this.sceneManager=sceneManager_;this.input=input_;});T=$pkg.GamepadScene=$newType(0,$kindStruct,"blocks.GamepadScene","GamepadScene","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(currentIndex_,countAfterSetting_,buttonStates_){this.$val=this;if(arguments.length===0){this.currentIndex=0;this.countAfterSetting=0;this.buttonStates=CB.nil;return;}this.currentIndex=currentIndex_;this.countAfterSetting=countAfterSetting_;this.buttonStates=buttonStates_;});AL=$pkg.GameScene=$newType(0,$kindStruct,"blocks.GameScene","GameScene","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(field_,rand_,currentPiece_,currentPieceX_,currentPieceY_,currentPieceYCarry_,currentPieceAngle_,nextPiece_,landingCount_,currentFrame_,score_,lines_,gameover_){this.$val=this;if(arguments.length===0){this.field=CG.nil;this.rand=CH.nil;this.currentPiece=CI.nil;this.currentPieceX=0;this.currentPieceY=0;this.currentPieceYCarry=0;this.currentPieceAngle=0;this.nextPiece=CI.nil;this.landingCount=0;this.currentFrame=0;this.score=0;this.lines=0;this.gameover=false;return;}this.field=field_;this.rand=rand_;this.currentPiece=currentPiece_;this.currentPieceX=currentPieceX_;this.currentPieceY=currentPieceY_;this.currentPieceYCarry=currentPieceYCarry_;this.currentPieceAngle=currentPieceAngle_;this.nextPiece=nextPiece_;this.landingCount=landingCount_;this.currentFrame=currentFrame_;this.score=score_;this.lines=lines_;this.gameover=gameover_;});AO=$pkg.Input=$newType(0,$kindStruct,"blocks.Input","Input","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(keyStates_,gamepadButtonStates_,gamepadStdButtonStates_,gamepadConfig_){this.$val=this;if(arguments.length===0){this.keyStates=BY.zero();this.gamepadButtonStates=BY.zero();this.gamepadStdButtonStates=BZ.zero();this.gamepadConfig=new L.Configuration.ptr(0,false,false,false,false);return;}this.keyStates=keyStates_;this.gamepadButtonStates=gamepadButtonStates_;this.gamepadStdButtonStates=gamepadStdButtonStates_;this.gamepadConfig=gamepadConfig_;});AR=$pkg.Angle=$newType(4,$kindInt,"blocks.Angle","Angle","github.com/hajimehoshi/ebiten/examples/blocks/blocks",null);AS=$pkg.BlockType=$newType(4,$kindInt,"blocks.BlockType","BlockType","github.com/hajimehoshi/ebiten/examples/blocks/blocks",null);AT=$pkg.Piece=$newType(0,$kindStruct,"blocks.Piece","Piece","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(blockType_,blocks_){this.$val=this;if(arguments.length===0){this.blockType=0;this.blocks=BO.nil;return;}this.blockType=blockType_;this.blocks=blocks_;});AV=$pkg.blocksImageParts=$newType(12,$kindSlice,"blocks.blocksImageParts","blocksImageParts","github.com/hajimehoshi/ebiten/examples/blocks/blocks",null);BA=$pkg.Scene=$newType(8,$kindInterface,"blocks.Scene","Scene","github.com/hajimehoshi/ebiten/examples/blocks/blocks",null);BB=$pkg.SceneManager=$newType(0,$kindStruct,"blocks.SceneManager","SceneManager","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(current_,next_,transitionCount_){this.$val=this;if(arguments.length===0){this.current=$ifaceNil;this.next=$ifaceNil;this.transitionCount=0;return;}this.current=current_;this.next=next_;this.transitionCount=transitionCount_;});BF=$pkg.titleImageParts=$newType(0,$kindStruct,"blocks.titleImageParts","titleImageParts","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(image_,count_){this.$val=this;if(arguments.length===0){this.image=BL.nil;this.count=0;return;}this.image=image_;this.count=count_;});BG=$pkg.TitleScene=$newType(0,$kindStruct,"blocks.TitleScene","TitleScene","github.com/hajimehoshi/ebiten/examples/blocks/blocks",function(count_,parts_){this.$val=this;if(arguments.length===0){this.count=0;this.parts=CK.nil;return;}this.count=count_;this.parts=parts_;});BL=$ptrType(A.Image);BM=$sliceType(L.StdButton);BN=$sliceType($Bool);BO=$sliceType(BN);BP=$sliceType($Int);BQ=$sliceType(BP);BR=$arrayType(AS,20);BS=$arrayType(BR,10);BT=$arrayType($Float64,5);BU=$arrayType(BT,4);BV=$sliceType(AS);BW=$sliceType(BV);BX=$ptrType(BB);BY=$arrayType($Int,256);BZ=$arrayType($Int,16);CA=$ptrType(AO);CB=$sliceType($String);CC=$sliceType($emptyInterface);CD=$arrayType($Float64,3);CE=$arrayType(CD,2);CF=$sliceType(A.ImagePart);CG=$ptrType(M);CH=$ptrType(I.Rand);CI=$ptrType(AT);CJ=$ptrType(A.DrawImageOptions);CK=$ptrType(BF);CL=$funcType([$Int],[],false);CM=$ptrType(R);CN=$ptrType(Q);CO=$ptrType(T);CP=$ptrType(AL);CQ=$ptrType(BG);N=function(){var $ptr;return new M.ptr(BS.zero(),0,$throwNilPointerError);};$pkg.NewField=N;M.ptr.prototype.IsBlocked=function(a,b){var $ptr,a,b,c,d,e;c=this;if(a<0||10<=a){return true;}if(b<0){return false;}if(20<=b){return true;}return!(((d=(e=c.blocks,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]))===0));};M.prototype.IsBlocked=function(a,b){return this.$val.IsBlocked(a,b);};M.ptr.prototype.collides=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return a.collides(e,b,c,d);};M.prototype.collides=function(a,b,c,d){return this.$val.collides(a,b,c,d);};M.ptr.prototype.MovePieceToLeft=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(e.collides(a,b-1>>0,c,d)){return b;}return b-1>>0;};M.prototype.MovePieceToLeft=function(a,b,c,d){return this.$val.MovePieceToLeft(a,b,c,d);};M.ptr.prototype.MovePieceToRight=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(e.collides(a,b+1>>0,c,d)){return b;}return b+1>>0;};M.prototype.MovePieceToRight=function(a,b,c,d){return this.$val.MovePieceToRight(a,b,c,d);};M.ptr.prototype.PieceDroppable=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return!e.collides(a,b,c+1>>0,d);};M.prototype.PieceDroppable=function(a,b,c,d){return this.$val.PieceDroppable(a,b,c,d);};M.ptr.prototype.DropPiece=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(e.collides(a,b,c+1>>0,d)){return c;}return c+1>>0;};M.prototype.DropPiece=function(a,b,c,d){return this.$val.DropPiece(a,b,c,d);};M.ptr.prototype.RotatePieceRight=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(e.collides(a,b,c,new AR(d).RotateRight())){return d;}return new AR(d).RotateRight();};M.prototype.RotatePieceRight=function(a,b,c,d){return this.$val.RotatePieceRight(a,b,c,d);};M.ptr.prototype.RotatePieceLeft=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(e.collides(a,b,c,new AR(d).RotateLeft())){return d;}return new AR(d).RotateLeft();};M.prototype.RotatePieceLeft=function(a,b,c,d){return this.$val.RotatePieceLeft(a,b,c,d);};M.ptr.prototype.AbsorbPiece=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;a.AbsorbInto(e,b,c,d);if(e.flushable()){e.flushCount=20;}};M.prototype.AbsorbPiece=function(a,b,c,d){return this.$val.AbsorbPiece(a,b,c,d);};M.ptr.prototype.Flushing=function(){var $ptr,a;a=this;return 0>0;}return false;};M.prototype.flushable=function(){return this.$val.flushable();};M.ptr.prototype.flushableLine=function(a){var $ptr,a,b,c,d,e;b=this;c=0;while(true){if(!(c<10)){break;}if((d=(e=b.blocks,((c<0||c>=e.length)?$throwRuntimeError("index out of range"):e[c])),((a<0||a>=d.length)?$throwRuntimeError("index out of range"):d[a]))===0){return false;}c=c+(1)>>0;}return true;};M.prototype.flushableLine=function(a){return this.$val.flushableLine(a);};M.ptr.prototype.setBlock=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;(e=(f=d.blocks,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};M.prototype.setBlock=function(a,b,c){return this.$val.setBlock(a,b,c);};M.ptr.prototype.endFlushing=function(){var $ptr,a,b,c;a=this;b=0;c=19;while(true){if(!(0<=c)){break;}if(a.flushLine(c+b>>0)){b=b+(1)>>0;}c=c-(1)>>0;}return b;};M.prototype.endFlushing=function(){return this.$val.endFlushing();};M.ptr.prototype.flushLine=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=this;c=0;while(true){if(!(c<10)){break;}if((d=(e=b.blocks,((c<0||c>=e.length)?$throwRuntimeError("index out of range"):e[c])),((a<0||a>=d.length)?$throwRuntimeError("index out of range"):d[a]))===0){return false;}c=c+(1)>>0;}f=a;while(true){if(!(1<=f)){break;}g=0;while(true){if(!(g<10)){break;}(k=(l=b.blocks,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g])),((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]=(h=(i=b.blocks,((g<0||g>=i.length)?$throwRuntimeError("index out of range"):i[g])),j=f-1>>0,((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]))));g=g+(1)>>0;}f=f-(1)>>0;}m=0;while(true){if(!(m<10)){break;}(n=b.blocks,((m<0||m>=n.length)?$throwRuntimeError("index out of range"):n[m]))[0]=0;m=m+(1)>>0;}return true;};M.prototype.flushLine=function(a){return this.$val.flushLine(a);};M.ptr.prototype.Update=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;if(0<=a.flushCount){$s=1;continue;}$s=2;continue;case 1:a.flushCount=a.flushCount-(1)>>0;if(a.flushCount===0){$s=3;continue;}$s=4;continue;case 3:b=a.endFlushing();if(!(a.onEndFlushing===$throwNilPointerError)){$s=5;continue;}$s=6;continue;case 5:$r=a.onEndFlushing(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 4:case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Update};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};M.prototype.Update=function(){return this.$val.Update();};M.ptr.prototype.flushingColor=function(){var $ptr,a,b,c,d,e,f;a=this;b=new A.ColorM.ptr(false,BU.zero());c=(a.flushCount/20)/2;b.Scale(1,1,1,c);d=(1-a.flushCount/20)*2;e=(1-a.flushCount/20)/2;f=(1-a.flushCount/20)/2;b.Translate(d,e,f,0);return b;};M.prototype.flushingColor=function(){return this.$val.flushingColor();};M.ptr.prototype.Draw=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,$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:d=this;e=$makeSlice(BW,10);f=$makeSlice(BW,10);g=0;while(true){if(!(g<10)){break;}((g<0||g>=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+g]=$makeSlice(BV,20));((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]=$makeSlice(BV,20));g=g+(1)>>0;}h=0;while(true){if(!(h<20)){break;}if(d.flushableLine(h)){i=0;while(true){if(!(i<10)){break;}(l=((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]),((h<0||h>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+h]=(j=(k=d.blocks,((i<0||i>=k.length)?$throwRuntimeError("index out of range"):k[i])),((h<0||h>=j.length)?$throwRuntimeError("index out of range"):j[h]))));i=i+(1)>>0;}}else{m=0;while(true){if(!(m<10)){break;}(p=((m<0||m>=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+m]),((h<0||h>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+h]=(n=(o=d.blocks,((m<0||m>=o.length)?$throwRuntimeError("index out of range"):o[m])),((h<0||h>=n.length)?$throwRuntimeError("index out of range"):n[h]))));m=m+(1)>>0;}}h=h+(1)>>0;}q=AW(a,e,b,c,new A.ColorM.ptr(false,BU.zero()));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!($interfaceIsEqual(r,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return r;case 3:s=AW(a,f,b,c,d.flushingColor());$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;if(!($interfaceIsEqual(t,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return t;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:M.ptr.prototype.Draw};}$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;};M.prototype.Draw=function(a,b,c){return this.$val.Draw(a,b,c);};O=function(a,b,c,d,e,f,g){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:h=$imul(B.ArcadeFont.TextWidth(b),e);c=c+((i=((g-h>>0))/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")))>>0;j=B.ArcadeFont.DrawTextWithShadow(a,b,c,d,e,f);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:O};}$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=function(a,b,c,d,e,f,g){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:h=$imul(B.ArcadeFont.TextWidth(b),e);c=c+((g-h>>0))>>0;i=B.ArcadeFont.DrawTextWithShadow(a,b,c,d,e,f);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:P};}$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;};S=function(){var $ptr;return new R.ptr(new D.Once.ptr(new D.Mutex.ptr(0,0),0),BC(BH()),new AO.ptr(BY.zero(),BY.zero(),BZ.zero(),new L.Configuration.ptr(0,false,false,false,false)));};$pkg.NewGame=S;R.ptr.prototype.Update=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;b.input.Update();c=b.sceneManager.Update(new Q.ptr(b.sceneManager,b.input));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.sceneManager.Draw(a);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;return $ifaceNil;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Update};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};R.prototype.Update=function(a){return this.$val.Update(a);};U=function(){var $ptr;return new T.ptr(0,0,CB.nil);};$pkg.NewGamepadScene=U;T.ptr.prototype.Update=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;if(b.currentIndex===0){a.Input.gamepadConfig.Reset();}if(a.Input.StateForKey(45)===1){a.Input.gamepadConfig.Reset();a.SceneManager.GoTo(BH());}if(b.buttonStates===CB.nil){b.buttonStates=$makeSlice(CB,AN.$length);}c=AN;d=0;case 1:if(!(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]);if(e=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+e]=h));d++;$s=1;continue;case 4:if(b.currentIndex===e){(j=b.buttonStates,((e<0||e>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+e]="_"));d++;$s=1;continue;}(k=b.buttonStates,((e<0||e>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+e]=""));d++;$s=1;continue;case 2:if(0>0;if(b.countAfterSetting<=0){a.SceneManager.GoTo(BH());}return $ifaceNil;}m=(l=b.currentIndex,((l<0||l>=AN.$length)?$throwRuntimeError("index out of range"):AN.$array[AN.$offset+l]));if(a.Input.gamepadConfig.Scan(0,m)){b.currentIndex=b.currentIndex+(1)>>0;if(b.currentIndex===AN.$length){b.countAfterSetting=60;}}return $ifaceNil;}return;}if($f===undefined){$f={$blk:T.ptr.prototype.Update};}$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;};T.prototype.Update=function(a){return this.$val.Update(a);};T.ptr.prototype.Draw=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=this;d=a.Fill((c=C.Black,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;if(b.buttonStates===CB.nil){return $ifaceNil;}e="GAMEPAD CONFIGURATION\n(PRESS ESC TO CANCEL)\n\n\nMOVE LEFT: %s\n\nMOVE RIGHT: %s\n\nDROP: %s\n\nROTATE LEFT: %s\n\nROTATE RIGHT: %s\n\n\n\n%s";f="";if(b.currentIndex===AN.$length){f="OK!";}l=E.Sprintf(e,new CC([new $String((g=b.buttonStates,(0>=g.$length?$throwRuntimeError("index out of range"):g.$array[g.$offset+0]))),new $String((h=b.buttonStates,(1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1]))),new $String((i=b.buttonStates,(2>=i.$length?$throwRuntimeError("index out of range"):i.$array[i.$offset+2]))),new $String((j=b.buttonStates,(3>=j.$length?$throwRuntimeError("index out of range"):j.$array[j.$offset+3]))),new $String((k=b.buttonStates,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4]))),new $String(f)]));$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;o=B.ArcadeFont.DrawTextWithShadow(a,m,16,16,1,(n=C.White,new n.constructor.elem(n)));$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return p;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:T.ptr.prototype.Draw};}$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;};T.prototype.Draw=function(a){return this.$val.Draw(a);};Z=function(){var $ptr,a,b,c,d;a=0;b=0;c=20;d=20;a=c;b=d;return[a,b];};AA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=Z();a=c[0];b=c[1];d=(a+100>>0)+20>>0;e=b;a=d;b=e;return[a,b];};AB=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=AA();a=c[0];b=c[1];d=a;e=b+10>>0;a=d;b=e;return[a,b];};AC=function(){var $ptr,a,b;a=AB();b=a[0];return 236-b>>0;};AD=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=AB();a=c[0];b=c[1];d=a;e=b+60>>0;a=d;b=e;return[a,b];};AE=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=AD();a=c[0];b=c[1];d=a;e=b+40>>0;a=d;b=e;return[a,b];};AF=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=AE();a=c[0];b=c[1];d=a;e=b+40>>0;a=d;b=e;return[a,b];};AG=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=$ifaceNil;c=A.NewImage(16,16,0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;V=b[0];a=b[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}e=V.Fill((d=C.White,new d.constructor.elem(d)));$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;g=G.NewImageFromFile("images/gophers.jpg",1);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;W=f[0];a=f[2];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}i=A.NewImage(256,240,0);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;X=h[0];a=h[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}j=Z();k=j[0];l=j[1];m=AH(X,k,l,100,200);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(!($interfaceIsEqual(n,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$panic(n);case 7:o=AA();k=o[0];l=o[1];p=B.ArcadeFont.DrawTextWithShadow(X,"NEXT",k,l,1,new AI.constructor.elem(AI));$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:$panic(q);case 10:r=AB();k=r[0];l=r[1];s=AH(X,k,l,50,50);$s=11;case 11:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;if(!($interfaceIsEqual(t,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:$panic(t);case 13:u=AD();k=u[0];l=u[1];v=AJ(X,"SCORE",k,l,AC());$s=14;case 14:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(!($interfaceIsEqual(w,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:$panic(w);case 16:x=AE();k=x[0];l=x[1];y=AJ(X,"LEVEL",k,l,AC());$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!($interfaceIsEqual(z,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:$panic(z);case 19:aa=AF();k=aa[0];l=aa[1];ab=AJ(X,"LINES",k,l,AC());$s=20;case 20:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;if(!($interfaceIsEqual(ac,$ifaceNil))){$s=21;continue;}$s=22;continue;case 21:$panic(ac);case 22:ae=A.NewImage(256,240,0);$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;Y=ad[0];a=ad[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}ag=Y.Fill((af=new C.NRGBA.ptr(0,0,0,128),new af.constructor.elem(af)));$s=24;case 24:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;l=115;ai=O(Y,"GAME OVER",0,l,1,(ah=C.White,new ah.constructor.elem(ah)),256);$s=25;case 25:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!($interfaceIsEqual(aj,$ifaceNil))){$s=26;continue;}$s=27;continue;case 26:$panic(aj);case 27:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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;};AH=function(a,b,c,d,e){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:f=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,CE.zero()),new A.ColorM.ptr(false,BU.zero()),CF.nil);g=V.Size();h=g[0];i=g[1];f.GeoM.Scale(d/h,e/i);f.GeoM.Translate(b,c);f.ColorM.Scale(0,0,0,0.75);j=a.DrawImage(V,f);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:AH};}$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;};AJ=function(a,b,c,d,e){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:f=B.ArcadeFont.DrawTextWithShadow(a,b,c,d,1,new AI.constructor.elem(AI));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return g;case 3:d=d+(10)>>0;h=AH(a,c,d,e,20);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return i;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AJ};}$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;};AK=function(a,b,c,d,e){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:d=d+(10)>>0;g=P(a,b,c,d+7>>0,1,(f=C.White,new f.constructor.elem(f)),e-5>>0);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return h;case 3:return $ifaceNil;}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.$s=$s;$f.$r=$r;return $f;};AM=function(){var $ptr;return new AL.ptr(N(),I.New(I.NewSource(K.Now().UnixNano())),CI.nil,0,0,0,0,CI.nil,0,0,0,0,false);};$pkg.NewGameScene=AM;AL.ptr.prototype.drawBackground=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.Fill((c=C.White,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:f=W.Size();g=f[0];h=f[1];i=256/g;j=240/h;k=i;if(k>0)>>0);return(e=$pkg.Pieces[AS.keyFor(d)],e!==undefined?e.v:CI.nil);}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.choosePiece};}$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;};AL.prototype.choosePiece=function(){return this.$val.choosePiece();};AL.ptr.prototype.initCurrentPiece=function(a){var $ptr,a,b,c,d,e;b=this;b.currentPiece=a;c=b.currentPiece.InitialPosition();d=c[0];e=c[1];b.currentPieceX=d;b.currentPieceY=e;b.currentPieceYCarry=0;b.currentPieceAngle=0;};AL.prototype.initCurrentPiece=function(a){return this.$val.initCurrentPiece(a);};AL.ptr.prototype.level=function(){var $ptr,a,b;a=this;return(b=a.lines/10,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};AL.prototype.level=function(){return this.$val.level();};AL.ptr.prototype.addScore=function(a){var $ptr,a,b,c,d;b=this;c=0;d=a;if(d===1){c=100;}else if(d===2){c=300;}else if(d===3){c=600;}else if(d===4){c=1000;}else{$panic(new $String("not reach"));}b.score=b.score+(($imul(((b.level()+1>>0)),c)))>>0;};AL.prototype.addScore=function(a){return this.$val.addScore(a);};AL.ptr.prototype.Update=function(a){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:b=[b];b[0]=this;c=b[0].field.Update();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;if(b[0].gameover){if(a.Input.StateForKey(66)===1){a.SceneManager.GoTo(BH());}return $ifaceNil;}b[0].currentFrame=b[0].currentFrame+(1)>>0;if(b[0].currentPiece===CI.nil){$s=2;continue;}$s=3;continue;case 2:d=b[0].choosePiece();$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=b[0].initCurrentPiece(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:if(b[0].nextPiece===CI.nil){$s=6;continue;}$s=7;continue;case 6:e=b[0].choosePiece();$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0].nextPiece=e;case 7:f=false;g=b[0].currentPiece;h=b[0].currentPieceAngle;if(!b[0].field.Flushing()){i=b[0].currentPiece;j=b[0].currentPieceX;k=b[0].currentPieceY;if(a.Input.IsRotateRightTrigger()){b[0].currentPieceAngle=b[0].field.RotatePieceRight(i,j,k,h);f=!((h===b[0].currentPieceAngle));}if(a.Input.IsRotateLeftTrigger()){b[0].currentPieceAngle=b[0].field.RotatePieceLeft(i,j,k,h);f=!((h===b[0].currentPieceAngle));}l=a.Input.StateForLeft();if((l===1)||(10<=l&&((m=l%2,m===m?m:$throwRuntimeError("integer divide by zero"))===0))){b[0].currentPieceX=b[0].field.MovePieceToLeft(i,j,k,h);f=!((j===b[0].currentPieceX));}n=a.Input.StateForRight();if((n===1)||(10<=n&&((o=n%2,o===o?o:$throwRuntimeError("integer divide by zero"))===0))){b[0].currentPieceX=b[0].field.MovePieceToRight(i,j,k,h);f=!((k===b[0].currentPieceX));}p=a.Input.StateForDown();if((q=((p-1>>0))%2,q===q?q:$throwRuntimeError("integer divide by zero"))===0){b[0].currentPieceY=b[0].field.DropPiece(i,j,k,h);f=!((k===b[0].currentPieceY));if(f){b[0].score=b[0].score+(1)>>0;}}}if(!b[0].field.Flushing()){r=b[0].currentPieceY;s=b[0].currentPieceAngle;b[0].currentPieceYCarry=b[0].currentPieceYCarry+((($imul(2,b[0].level()))+1>>0))>>0;while(true){if(!(60<=b[0].currentPieceYCarry)){break;}b[0].currentPieceYCarry=b[0].currentPieceYCarry-(60)>>0;b[0].currentPieceY=b[0].field.DropPiece(g,b[0].currentPieceX,b[0].currentPieceY,s);f=!((r===b[0].currentPieceY));}}if(f){$s=9;continue;}if(!b[0].field.Flushing()&&!b[0].field.PieceDroppable(g,b[0].currentPieceX,b[0].currentPieceY,h)){$s=10;continue;}$s=11;continue;case 9:b[0].landingCount=0;$s=11;continue;case 10:if(0>0;}else{b[0].landingCount=b[0].landingCount+(1)>>0;}if(60<=b[0].landingCount){$s=12;continue;}$s=13;continue;case 12:b[0].field.AbsorbPiece(g,b[0].currentPieceX,b[0].currentPieceY,h);if(b[0].field.Flushing()){$s=14;continue;}$s=15;continue;case 14:b[0].field.SetEndFlushing((function(b){return function $b(t){var $ptr,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b[0].lines=b[0].lines+(t)>>0;if(0>0;x=t+($imul(b.currentPieceY,10))>>0;y=b.currentPiece.Draw(a,w,x,b.currentPieceAngle);$s=21;case 21:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!($interfaceIsEqual(z,$ifaceNil))){$s=22;continue;}$s=23;continue;case 22:return z;case 23:case 20:if(!(b.nextPiece===CI.nil)){$s=24;continue;}$s=25;continue;case 24:aa=(s+100>>0)+20>>0;ab=t+10>>0;ac=b.nextPiece.DrawAtCenter(a,aa,ab,50,50,0);$s=26;case 26:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if(!($interfaceIsEqual(ad,$ifaceNil))){$s=27;continue;}$s=28;continue;case 27:return ad;case 28:case 25:if(b.gameover){$s=29;continue;}$s=30;continue;case 29:ae=a.DrawImage(Y,CJ.nil);$s=31;case 31:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ae;case 30:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Draw};}$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;};AL.prototype.Draw=function(a){return this.$val.Draw(a);};AO.ptr.prototype.StateForKey=function(a){var $ptr,a,b,c;b=this;return(c=b.keyStates,((a<0||a>=c.length)?$throwRuntimeError("index out of range"):c[a]));};AO.prototype.StateForKey=function(a){return this.$val.StateForKey(a);};AO.ptr.prototype.StateForGamepadButton=function(a){var $ptr,a,b,c;b=this;return(c=b.gamepadButtonStates,((a<0||a>=c.length)?$throwRuntimeError("index out of range"):c[a]));};AO.prototype.StateForGamepadButton=function(a){return this.$val.StateForGamepadButton(a);};AO.ptr.prototype.stateForGamepadStdButton=function(a){var $ptr,a,b,c;b=this;return(c=b.gamepadStdButtonStates,((a<0||a>=c.length)?$throwRuntimeError("index out of range"):c[a]));};AO.prototype.stateForGamepadStdButton=function(a){return this.$val.stateForGamepadStdButton(a);};AO.ptr.prototype.Update=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=this;b=a.keyStates;c=0;while(true){if(!(c<256)){break;}d=c;if(!A.IsKeyPressed((d>>0))){(e=a.keyStates,((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]=0));c++;continue;}(g=a.keyStates,((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]=((f=a.keyStates,((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]))+(1)>>0)));c++;}h=a.gamepadButtonStates;i=0;while(true){if(!(i<256)){break;}j=i;if(!A.IsGamepadButtonPressed(0,(j>>0))){(k=a.gamepadButtonStates,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));i++;continue;}(m=a.gamepadButtonStates,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=((l=a.gamepadButtonStates,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j]))+(1)>>0)));i++;}n=AN;o=0;while(true){if(!(o=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]);if(!a.gamepadConfig.IsButtonPressed(0,p)){(q=a.gamepadStdButtonStates,((p<0||p>=q.length)?$throwRuntimeError("index out of range"):q[p]=0));o++;continue;}(s=a.gamepadStdButtonStates,((p<0||p>=s.length)?$throwRuntimeError("index out of range"):s[p]=((r=a.gamepadStdButtonStates,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]))+(1)>>0)));o++;}};AO.prototype.Update=function(){return this.$val.Update();};AO.ptr.prototype.IsRotateRightTrigger=function(){var $ptr,a;a=this;if((a.StateForKey(66)===1)||(a.StateForKey(33)===1)){return true;}return a.stateForGamepadStdButton(9)===1;};AO.prototype.IsRotateRightTrigger=function(){return this.$val.IsRotateRightTrigger();};AO.ptr.prototype.IsRotateLeftTrigger=function(){var $ptr,a;a=this;if(a.StateForKey(35)===1){return true;}return a.stateForGamepadStdButton(11)===1;};AO.prototype.IsRotateLeftTrigger=function(){return this.$val.IsRotateLeftTrigger();};AO.ptr.prototype.StateForLeft=function(){var $ptr,a,b;a=this;b=a.StateForKey(60);if(0>0;};$ptrType(AR).prototype.RotateRight=function(){return new AR(this.$get()).RotateRight();};AR.prototype.RotateLeft=function(){var $ptr,a;a=this.$val;if(a===0){return 3;}return a-1>>0;};$ptrType(AR).prototype.RotateLeft=function(){return new AR(this.$get()).RotateLeft();};AU=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=$makeSlice(BO,a.$length);c=a;d=0;while(true){if(!(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]);((e<0||e>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+e]=$makeSlice(BN,f.$length));d++;}g=a;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);k=j;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);(o=((m<0||m>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+m]),((i<0||i>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+i]=!((n===0))));l++;}h++;}return b;};AV.prototype.Len=function(){var $ptr,a;a=this;return $imul(a.$length,(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]).$length);};$ptrType(AV).prototype.Len=function(){return this.$get().Len();};AV.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;b=0;c=0;d=0;e=0;f=this;g=(h=a%f.$length,h===h?h:$throwRuntimeError("integer divide by zero"));i=(j=a/f.$length,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));a=g;k=i;l=$imul(a,10);m=$imul(k,10);n=l;o=m;p=l+10>>0;q=m+10>>0;b=n;c=o;d=p;e=q;return[b,c,d,e];};$ptrType(AV).prototype.Dst=function(a){return this.$get().Dst(a);};AV.prototype.Src=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;b=0;c=0;d=0;e=0;f=this;g=(h=a%f.$length,h===h?h:$throwRuntimeError("integer divide by zero"));i=(j=a/f.$length,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));a=g;k=i;m=(l=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]),((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]));if(m===0){n=0;o=0;p=0;q=0;b=n;c=o;d=p;e=q;return[b,c,d,e];}r=$imul((((m>>0)-1>>0)),10);s=r;t=0;u=r+10>>0;v=10;b=s;c=t;d=u;e=v;return[b,c,d,e];};$ptrType(AV).prototype.Src=function(a){return this.$get().Src(a);};AW=function(a,b,c,d,e){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:e=$clone(e,A.ColorM);f=new A.DrawImageOptions.ptr($subslice(new AV(b.$array),b.$offset,b.$offset+b.$length),new A.GeoM.ptr(false,CE.zero()),$clone(e,A.ColorM),CF.nil);f.GeoM.Translate(c,d);g=a.DrawImage(AP,f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=2;case 2:return g;}return;}if($f===undefined){$f={$blk:AW};}$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;};AT.ptr.prototype.InitialPosition=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=this;b=a.blocks.$length;d=(c=((10-b>>0))/2,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));e=0;f=0;Loop:while(true){if(!(f=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g])),((f<0||f>=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+f]))){break Loop;}g=g+(1)>>0;}e=e-(1)>>0;f=f+(1)>>0;}return[d,e];};AT.prototype.InitialPosition=function(){return this.$val.InitialPosition();};AT.ptr.prototype.isBlocked=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.blocks.$length;f=a;g=b;h=f;i=g;j=c;if(j===0){}else if(j===1){h=b;i=(e-1>>0)-a>>0;}else if(j===2){h=(e-1>>0)-a>>0;i=(e-1>>0)-b>>0;}else if(j===3){h=(e-1>>0)-b>>0;i=a;}return(k=(l=d.blocks,((h<0||h>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+h])),((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]));};AT.prototype.isBlocked=function(a,b,c){return this.$val.isBlocked(a,b,c);};AT.ptr.prototype.collides=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.blocks.$length;g=0;while(true){if(!(g>0,c+h>>0)&&e.isBlocked(g,h,d)){return true;}h=h+(1)>>0;}g=g+(1)>>0;}return false;};AT.prototype.collides=function(a,b,c,d){return this.$val.collides(a,b,c,d);};AT.ptr.prototype.Collides=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.collides(a,b,c,d);};AT.prototype.Collides=function(a,b,c,d){return this.$val.Collides(a,b,c,d);};AT.ptr.prototype.AbsorbInto=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.blocks.$length;g=0;while(true){if(!(g>0,c+h>>0,e.blockType);}h=h+(1)>>0;}g=g+(1)>>0;}};AT.prototype.AbsorbInto=function(a,b,c,d){return this.$val.AbsorbInto(a,b,c,d);};AT.ptr.prototype.DrawAtCenter=function(a,b,c,d,e,f){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:g=this;b=b+((h=((d-($imul((i=g.blocks,(0>=i.$length?$throwRuntimeError("index out of range"):i.$array[i.$offset+0])).$length,10))>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")))>>0;c=c+((j=((e-($imul(g.blocks.$length,10))>>0))/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero")))>>0;k=g.Draw(a,b,c,f);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AT.ptr.prototype.DrawAtCenter};}$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;};AT.prototype.DrawAtCenter=function(a,b,c,d,e,f){return this.$val.DrawAtCenter(a,b,c,d,e,f);};AT.ptr.prototype.Draw=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.blocks.$length;g=$makeSlice(BW,f);h=e.blocks;i=0;while(true){if(!(i=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+j]=$makeSlice(BV,f));k=((j<0||j>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+j]);l=0;while(true){if(!(l=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+j]),((m<0||m>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+m]=e.blockType));}l++;}i++;}o=AW(a,g,b,c,new A.ColorM.ptr(false,BU.zero()));$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=2;case 2:return o;}return;}if($f===undefined){$f={$blk:AT.ptr.prototype.Draw};}$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.$s=$s;$f.$r=$r;return $f;};AT.prototype.Draw=function(a,b,c,d){return this.$val.Draw(a,b,c,d);};AZ=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=$ifaceNil;c=A.NewImage(256,240,0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;AX=b[0];a=b[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}e=A.NewImage(256,240,0);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;AY=d[0];a=d[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AZ};}$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;};BC=function(a){var $ptr,a;return new BB.ptr(a,$ifaceNil,-1);};$pkg.NewSceneManager=BC;BB.ptr.prototype.Update=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;if(b.transitionCount===-1){$s=1;continue;}$s=2;continue;case 1:c=b.current.Update(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:b.transitionCount=b.transitionCount+(1)>>0;if(20<=b.transitionCount){b.current=b.next;b.next=$ifaceNil;b.transitionCount=-1;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:BB.ptr.prototype.Update};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};BB.prototype.Update=function(a){return this.$val.Update(a);};BB.ptr.prototype.Draw=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:b=this;if(b.transitionCount===-1){$s=1;continue;}$s=2;continue;case 1:c=b.current.Draw(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=AX.Clear();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=b.current.Draw(AX);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return f;case 8:g=AY.Clear();$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.next.Draw(AY);$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return i;case 12:j=a.DrawImage(AX,CJ.nil);$s=13;case 13:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:return k;case 15:l=b.transitionCount/20;m=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,CE.zero()),new A.ColorM.ptr(false,BU.zero()),CF.nil);m.ColorM.Scale(1,1,1,l);n=a.DrawImage(AY,m);$s=16;case 16:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=17;case 17:return n;}return;}if($f===undefined){$f={$blk:BB.ptr.prototype.Draw};}$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;};BB.prototype.Draw=function(a){return this.$val.Draw(a);};BB.ptr.prototype.GoTo=function(a){var $ptr,a,b;b=this;b.next=a;b.transitionCount=0;};BB.prototype.GoTo=function(a){return this.$val.GoTo(a);};BE=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=$ifaceNil;c=G.NewImageFromFile("images/blocks/background.png",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;BD=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};BF.ptr.prototype.Len=function(){var $ptr,a,b,c,d,e,f;a=this;b=a.image.Size();c=b[0];d=b[1];return $imul((((e=256/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))+1>>0)),(((f=240/d,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"))+2>>0)));};BF.prototype.Len=function(){return this.$val.Len();};BF.ptr.prototype.Dst=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;b=0;c=0;d=0;e=0;f=this;g=f.image.Size();h=g[0];i=g[1];j=(k=a%(((l=256/h,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))+1>>0)),k===k?k:$throwRuntimeError("integer divide by zero"));m=(n=a/(((o=256/h,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))+1>>0)),(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))-1>>0;a=j;p=m;s=(q=((r=-f.count/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero")))%h,q===q?q:$throwRuntimeError("integer divide by zero"));v=(t=((u=f.count/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero")))%i,t===t?t:$throwRuntimeError("integer divide by zero"));w=($imul(a,h))+s>>0;x=($imul(p,i))+v>>0;y=w;z=x;aa=w+h>>0;ab=x+i>>0;b=y;c=z;d=aa;e=ab;return[b,c,d,e];};BF.prototype.Dst=function(a){return this.$val.Dst(a);};BF.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;b=0;c=0;d=0;e=0;f=this;g=f.image.Size();h=g[0];i=g[1];j=0;k=0;l=h;m=i;b=j;c=k;d=l;e=m;return[b,c,d,e];};BF.prototype.Src=function(a){return this.$val.Src(a);};BH=function(){var $ptr;return new BG.ptr(0,new BF.ptr(BD,0));};$pkg.NewTitleScene=BH;BI=function(a){var $ptr,a,b,c,d;b=AN;c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);if(a.gamepadConfig.IsButtonPressed(0,d)){return true;}c++;}return false;};BJ=function(a){var $ptr,a,b,c;b=(A.GamepadButtonNum(0)>>0);c=0;while(true){if(!(c>0;}return false;};BG.ptr.prototype.Update=function(a){var $ptr,a,b;b=this;b.count=b.count+(1)>>0;if(a.Input.StateForKey(66)===1){a.SceneManager.GoTo(AM());return $ifaceNil;}if(BI(a.Input)){a.SceneManager.GoTo(AM());return $ifaceNil;}if(BJ(a.Input)){a.SceneManager.GoTo(U());return $ifaceNil;}return $ifaceNil;};BG.prototype.Update=function(a){return this.$val.Update(a);};BG.ptr.prototype.Draw=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;c=b.drawTitleBackground(a,b.count);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=BK(a,"BLOCKS");$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return f;case 6:g="PRESS SPACE TO START";i=(h=((256-B.ArcadeFont.TextWidth(g)>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));j=192;l=B.ArcadeFont.DrawTextWithShadow(a,g,i,j,1,(k=new C.NRGBA.ptr(128,0,0,255),new k.constructor.elem(k)));$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(!($interfaceIsEqual(m,$ifaceNil))){$s=8;continue;}$s=9;continue;case 8:return m;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BG.ptr.prototype.Draw};}$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;};BG.prototype.Draw=function(a){return this.$val.Draw(a);};BG.ptr.prototype.drawTitleBackground=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=this;c.parts.count=b;d=a.DrawImage(BD,new A.DrawImageOptions.ptr(c.parts,new A.GeoM.ptr(false,CE.zero()),new A.ColorM.ptr(false,BU.zero()),CF.nil));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return d;}return;}if($f===undefined){$f={$blk:BG.ptr.prototype.drawTitleBackground};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};BG.prototype.drawTitleBackground=function(a,b){return this.$val.drawTitleBackground(a,b);};BK=function(a,b){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:c=4;d=$imul(B.ArcadeFont.TextWidth(b),c);f=(e=((256-d>>0))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));g=32;i=B.ArcadeFont.DrawTextWithShadow(a,b,f,g,c,(h=new C.NRGBA.ptr(0,0,128,255),new h.constructor.elem(h)));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:BK};}$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;};CG.methods=[{prop:"IsBlocked",name:"IsBlocked",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"collides",name:"collides",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([CI,$Int,$Int,AR],[$Bool],false)},{prop:"MovePieceToLeft",name:"MovePieceToLeft",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[$Int],false)},{prop:"MovePieceToRight",name:"MovePieceToRight",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[$Int],false)},{prop:"PieceDroppable",name:"PieceDroppable",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[$Bool],false)},{prop:"DropPiece",name:"DropPiece",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[$Int],false)},{prop:"RotatePieceRight",name:"RotatePieceRight",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[AR],false)},{prop:"RotatePieceLeft",name:"RotatePieceLeft",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[AR],false)},{prop:"AbsorbPiece",name:"AbsorbPiece",pkg:"",typ:$funcType([CI,$Int,$Int,AR],[],false)},{prop:"Flushing",name:"Flushing",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"SetEndFlushing",name:"SetEndFlushing",pkg:"",typ:$funcType([CL],[],false)},{prop:"flushable",name:"flushable",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[$Bool],false)},{prop:"flushableLine",name:"flushableLine",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([$Int],[$Bool],false)},{prop:"setBlock",name:"setBlock",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([$Int,$Int,AS],[],false)},{prop:"endFlushing",name:"endFlushing",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[$Int],false)},{prop:"flushLine",name:"flushLine",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([$Int],[$Bool],false)},{prop:"Update",name:"Update",pkg:"",typ:$funcType([],[$error],false)},{prop:"flushingColor",name:"flushingColor",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[A.ColorM],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL,$Int,$Int],[$error],false)}];CM.methods=[{prop:"Update",name:"Update",pkg:"",typ:$funcType([BL],[$error],false)}];CO.methods=[{prop:"Update",name:"Update",pkg:"",typ:$funcType([CN],[$error],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL],[$error],false)}];CP.methods=[{prop:"drawBackground",name:"drawBackground",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([BL],[$error],false)},{prop:"choosePiece",name:"choosePiece",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[CI],false)},{prop:"initCurrentPiece",name:"initCurrentPiece",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([CI],[],false)},{prop:"level",name:"level",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[$Int],false)},{prop:"addScore",name:"addScore",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([$Int],[],false)},{prop:"Update",name:"Update",pkg:"",typ:$funcType([CN],[$error],false)},{prop:"goNextPiece",name:"goNextPiece",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([],[],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL],[$error],false)}];CA.methods=[{prop:"StateForKey",name:"StateForKey",pkg:"",typ:$funcType([A.Key],[$Int],false)},{prop:"StateForGamepadButton",name:"StateForGamepadButton",pkg:"",typ:$funcType([A.GamepadButton],[$Int],false)},{prop:"stateForGamepadStdButton",name:"stateForGamepadStdButton",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([L.StdButton],[$Int],false)},{prop:"Update",name:"Update",pkg:"",typ:$funcType([],[],false)},{prop:"IsRotateRightTrigger",name:"IsRotateRightTrigger",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRotateLeftTrigger",name:"IsRotateLeftTrigger",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"StateForLeft",name:"StateForLeft",pkg:"",typ:$funcType([],[$Int],false)},{prop:"StateForRight",name:"StateForRight",pkg:"",typ:$funcType([],[$Int],false)},{prop:"StateForDown",name:"StateForDown",pkg:"",typ:$funcType([],[$Int],false)}];AR.methods=[{prop:"RotateRight",name:"RotateRight",pkg:"",typ:$funcType([],[AR],false)},{prop:"RotateLeft",name:"RotateLeft",pkg:"",typ:$funcType([],[AR],false)}];CI.methods=[{prop:"InitialPosition",name:"InitialPosition",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"isBlocked",name:"isBlocked",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([$Int,$Int,AR],[$Bool],false)},{prop:"collides",name:"collides",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([CG,$Int,$Int,AR],[$Bool],false)},{prop:"Collides",name:"Collides",pkg:"",typ:$funcType([CG,$Int,$Int,AR],[$Bool],false)},{prop:"AbsorbInto",name:"AbsorbInto",pkg:"",typ:$funcType([CG,$Int,$Int,AR],[],false)},{prop:"DrawAtCenter",name:"DrawAtCenter",pkg:"",typ:$funcType([BL,$Int,$Int,$Int,$Int,AR],[$error],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL,$Int,$Int,AR],[$error],false)}];AV.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];BX.methods=[{prop:"Update",name:"Update",pkg:"",typ:$funcType([CN],[$error],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL],[$error],false)},{prop:"GoTo",name:"GoTo",pkg:"",typ:$funcType([BA],[],false)}];CK.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];CQ.methods=[{prop:"Update",name:"Update",pkg:"",typ:$funcType([CN],[$error],false)},{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL],[$error],false)},{prop:"drawTitleBackground",name:"drawTitleBackground",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$funcType([BL,$Int],[$error],false)}];M.init([{prop:"blocks",name:"blocks",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BS,tag:""},{prop:"flushCount",name:"flushCount",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"onEndFlushing",name:"onEndFlushing",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CL,tag:""}]);Q.init([{prop:"SceneManager",name:"SceneManager",pkg:"",typ:BX,tag:""},{prop:"Input",name:"Input",pkg:"",typ:CA,tag:""}]);R.init([{prop:"once",name:"once",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:D.Once,tag:""},{prop:"sceneManager",name:"sceneManager",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BX,tag:""},{prop:"input",name:"input",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:AO,tag:""}]);T.init([{prop:"currentIndex",name:"currentIndex",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"countAfterSetting",name:"countAfterSetting",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"buttonStates",name:"buttonStates",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CB,tag:""}]);AL.init([{prop:"field",name:"field",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CG,tag:""},{prop:"rand",name:"rand",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CH,tag:""},{prop:"currentPiece",name:"currentPiece",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CI,tag:""},{prop:"currentPieceX",name:"currentPieceX",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"currentPieceY",name:"currentPieceY",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"currentPieceYCarry",name:"currentPieceYCarry",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"currentPieceAngle",name:"currentPieceAngle",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:AR,tag:""},{prop:"nextPiece",name:"nextPiece",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CI,tag:""},{prop:"landingCount",name:"landingCount",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"currentFrame",name:"currentFrame",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"score",name:"score",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"lines",name:"lines",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"gameover",name:"gameover",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Bool,tag:""}]);AO.init([{prop:"keyStates",name:"keyStates",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BY,tag:""},{prop:"gamepadButtonStates",name:"gamepadButtonStates",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BY,tag:""},{prop:"gamepadStdButtonStates",name:"gamepadStdButtonStates",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BZ,tag:""},{prop:"gamepadConfig",name:"gamepadConfig",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:L.Configuration,tag:""}]);AT.init([{prop:"blockType",name:"blockType",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:AS,tag:""},{prop:"blocks",name:"blocks",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BO,tag:""}]);AV.init(BV);BA.init([{prop:"Draw",name:"Draw",pkg:"",typ:$funcType([BL],[$error],false)},{prop:"Update",name:"Update",pkg:"",typ:$funcType([CN],[$error],false)}]);BB.init([{prop:"current",name:"current",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BA,tag:""},{prop:"next",name:"next",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BA,tag:""},{prop:"transitionCount",name:"transitionCount",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""}]);BF.init([{prop:"image",name:"image",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:BL,tag:""},{prop:"count",name:"count",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""}]);BG.init([{prop:"count",name:"count",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:$Int,tag:""},{prop:"parts",name:"parts",pkg:"github.com/hajimehoshi/ebiten/examples/blocks/blocks",typ:CK,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=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$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=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$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=D.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V=BL.nil;W=BL.nil;X=BL.nil;Y=BL.nil;AP=BL.nil;AX=BL.nil;AY=BL.nil;BD=BL.nil;AI=new C.NRGBA.ptr(64,64,255,255);AN=new BM([1,2,4,11,9]);$pkg.Pieces=$makeMap(AS.keyFor,[{k:1,v:new AT.ptr(1,AU(new BQ([new BP([0,0,0,0]),new BP([1,1,1,1]),new BP([0,0,0,0]),new BP([0,0,0,0])])))},{k:2,v:new AT.ptr(2,AU(new BQ([new BP([1,0,0]),new BP([1,1,1]),new BP([0,0,0])])))},{k:3,v:new AT.ptr(3,AU(new BQ([new BP([0,1,0]),new BP([1,1,1]),new BP([0,0,0])])))},{k:4,v:new AT.ptr(4,AU(new BQ([new BP([0,0,1]),new BP([1,1,1]),new BP([0,0,0])])))},{k:5,v:new AT.ptr(5,AU(new BQ([new BP([1,1,0]),new BP([0,1,1]),new BP([0,0,0])])))},{k:6,v:new AT.ptr(6,AU(new BQ([new BP([0,1,1]),new BP([1,1,0]),new BP([0,0,0])])))},{k:7,v:new AT.ptr(7,AU(new BQ([new BP([1,1]),new BP([1,1])])))}]);$r=AG();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=AQ();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=AZ();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BE();$s=16;case 16: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["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime/pprof"]=(function(){var $pkg={},$init,A,B,D,E;A=$packages["io"];B=$packages["sync"];D=function(a){var $ptr,a;return $ifaceNil;};$pkg.StartCPUProfile=D;E=function(){var $ptr;};$pkg.StopCPUProfile=E;$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/blocks"]=(function(){var $pkg={},$init,A,B,C,D,E,F,I,G,a,H;A=$packages["flag"];B=$packages["github.com/hajimehoshi/ebiten"];C=$packages["github.com/hajimehoshi/ebiten/examples/blocks/blocks"];D=$packages["log"];E=$packages["os"];F=$packages["runtime/pprof"];I=$sliceType($emptyInterface);H=function(){var $ptr,b,c,d,e,f,g,h,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$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=A.Parse();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(G.$get()==="")){$s=2;continue;}$s=3;continue;case 2:b=E.Create(G.$get());c=b[0];d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:$r=D.Fatal(new I([d]));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:F.StartCPUProfile(c);$deferred.push([F.StopCPUProfile,[]]);case 3:e=C.NewGame();f=$methodVal(e,"Update");g=B.Run(f,256,240,2,"Blocks (Ebiten Demo)");$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=8;continue;}$s=9;continue;case 8:$r=D.Fatal(new I([h]));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$deferred=$deferred;$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=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;}a=A.String("cpuprofile","","write cpu profile to file");$s=7;case 7:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}G=a;if($pkg===$mainPkg){$s=8;continue;}$s=9;continue;case 8:$r=H();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 9:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/blocks"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=blocks.js.map diff --git a/_docs/public/examples/blocks.js.map b/_docs/public/examples/blocks.js.map deleted file mode 100644 index 417c08283..000000000 --- a/_docs/public/examples/blocks.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"blocks.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/github.com/gopherjs/gopherjs/compiler/natives/unicode/unicode.go","/unicode/letter.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/exec_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/path_unix.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/atob.go","/strconv/atof.go","/strconv/atoi.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/sort/search.go","/sort/sort.go","/flag/flag.go","/path/filepath/path.go","/path/filepath/path_unix.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/input.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/github.com/hajimehoshi/ebiten/examples/common/font.go","/github.com/hajimehoshi/ebiten/exp/gamepad/gamepad.go","/image/jpeg/huffman.go","/image/jpeg/idct.go","/image/jpeg/reader.go","/image/jpeg/scan.go","/image/jpeg/writer.go","/math/rand/exp.go","/math/rand/normal.go","/math/rand/rand.go","/math/rand/rng.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/field.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/font.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/game.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/gamepadscene.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/gamescene.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/input.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/piece.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/scenemanager.go","/github.com/hajimehoshi/ebiten/examples/blocks/blocks/titlescene.go","/log/log.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/pprof/pprof.go","/github.com/hajimehoshi/ebiten/examples/blocks/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;ogBCnQA,8B,wCAQA,8B,wCAyBA,UACC,S,MAEA,S,C,8C,WAMA,a,C,WAGA,a,CAED,a,0C,iBAsBC,S,CAED,8B,oCAoCA,S,0CAmBA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,kDAIA,qBACA,0B,4DAIA,sBACA,gJ,kDAIA,gCACA,sDACA,0B,6DChMA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,M,K;id,cC7B9B,a,CAED,IACA,YACA,8BACC,qGACA,uF,+BAEC,iF,cAEC,+D,CAED,c,C,gBAGA,I,MAEA,S,C,CAGF,S,gCC4NA,8B,uC,W,kBAOE,Y,CAED,S,CAED,e,6W,i5iB;+QCpNA,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;g2GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,gZCWE,U,kDC3E1B,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8DAgCA,8CACA,S,eAEC,Q,CAED,Y,sDAgGI,SACJ,qB,sCAEC,S,CAED,2BACA,K,eAEC,Q,CAED,S,4DAsCA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,gFA0HI,SACJ,qB,sCAEC,Y,CAED,uCACA,KACA,S,eAEC,Q,CAED,Y,6EAuBI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAyJI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,yEA8HI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;iRC1BA,+D,gDAIA,kC,4CAIA,sC,oDAIA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,2D,kBCwVC,S,C,kBAGA,oF,CAED,qCACI,0CACH,qGADuB,W,CAIxB,mBACA,+FACA,kJACC,uCACA,uC,KAED,yB,8TAoBA,WACA,IAGI,SAEJ,8EACC,sF,e,UAGE,sB,CAED,mBACA,kC,C,SAGA,I,WAEC,e,C,eAIA,oBACA,mBACA,+BACA,I,CAED,0C,C,6B,eAID,S,CAED,wC,oYAe+B,kH,yK,mBAiN9B,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;0/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,4FAoClB,IACI,kBACJ,Q,cAIC,kB,uBAEC,SACA,iB,C,C,YAKD,8B,C,WAGA,uD,CAED,oCAEE,4CACA,IAGG,Y,wEAIH,uD,CAGD,WACA,6B,sCAEC,uD,CAED,oBAGA,Q,sCAEC,iBACA,WACA,6B,sCAEC,uD,CAEG,8CACH,SAD4B,W,CAG7B,oB,C,WAIA,uD,CAID,KACA,sCACC,oB,8BAEC,M,CAHgB,a,C,WAOjB,+D,CAED,qBACA,kBACA,oG,QAEC,sE,C,qHAIA,uD,CAED,iB,yCAIC,kG,yCAGC,uD,C,CAGF,qD,yCAGC,uD,C,C,MAKD,+B,CAED,yC,gFClrCmB,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,6S,+E,0E,Y,c,8G,4C;qnFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,qFAiBA,sB,+C,QAgBC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,kCAOG,mB,sCACF,8B,CAED,iB,kEAKK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,gDAcD,Q,uDAEI,e,UACF,O,C,CAIF,2C,sCAEC,qC,C,MAKA,Q,C,QAMA,iB,CAGD,gC,gEAKK,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAMI,6TACJ,c,sCAEC,wC,CAED,0B,6CAQI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,4BCEA,c,iDCMA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;mzECTrC,IACA,kE,uCAEA,2E,wC,C,+C,sD,6BCKC,a,CAEG,yCACH,kB,iBAEC,kB,CAED,kB,iBAEC,kB,C,eAGA,a,CAVuB,W,CAazB,Y,6D,iBAKC,Y,CAED,kBAGA,W,kC,sC,CAIA,iB,kC,uC,CAIA,0B,e,qC,CAIA,0B,gC,sC,C,MAbC,Y,CAkBD,Y,uEAGK,OACL,IACA,YACA,c,gBAIC,S,CAGD,yBACC,WACD,+BACC,WACA,W,CAID,QACA,QACA,qCAEC,yB,MAEE,S,CAED,OACA,UAPgB,W,SAUjB,mDACC,O,uCAEC,iBAbe,W,S,C,aAiBf,kGACA,iB,oCAEA,a,CApBe,W,S,CAwBjB,M,C,OAGA,S,C,OAGA,U,C,kEASA,W,gBAEC,S,CAED,I,yBAEC,W,+BAEA,WACA,K,C,wDAGA,S,CAED,IACA,+E,YAEE,gD,CAF8C,W,CAKhD,4B,C,sBAIA,S,CAGD,OACA,S,8JAQA,I,gBAIC,kB,CAGD,yBACC,WACD,+BACC,OACA,W,CAID,QACA,QACA,IACA,IACA,IACA,qCACQ,kBACP,W,MAEE,kB,CAED,OACA,IAPgB,W,SAUjB,uBACC,O,sBAEC,WAbe,W,S,CAgBhB,W,SAEC,gCACA,gFACA,W,oCAEA,O,CAtBe,W,S,CA0BjB,M,C,OAGA,kB,C,OAGA,I,C,kEASA,W,gBAEC,kB,CAED,I,yBAEC,W,+BAEA,WACA,K,C,wDAGA,kB,CAED,IACA,+E,YAEE,gD,CAF8C,W,CAKhD,sB,C,sBAIA,kB,CAGD,SACA,OACA,kB,sKAOK,OACD,IACA,mBAGJ,0C,OACC,mBACA,SACA,c,OAMD,0C,OACC,c,OAED,2C,OAEC,mBACA,SACA,c,OAID,IACA,iCACK,I,oBAEH,K,MAEA,gG,CAED,YACA,W,CAED,wDACK,I,qBAEH,K,MAEA,iG,CAED,WACA,W,CAID,W,oBAMC,qBACA,YACA,W,CAGD,yF,OACC,c,QAID,iCACA,qBAGA,sH,QACC,2BACA,WACA,0F,QACC,c,Q,Q,iIAMD,S,CAED,cAED,OAEC,mBACA,oDACA,OAED,OAEC,qIACA,2J,UAEC,yH,C,4B,gJ,sEAsBA,Y,CAED,gB,MAEC,K,CAGD,U,+BAKA,qB,SAIE,uGACA,K,C,sBAIA,Y,C,oHAGF,sB,2H,CAGA,Y,qE,sEAOC,Y,CAED,gB,MAEC,K,CAGD,U,+BAIA,qB,SAIE,gHACA,K,C,sBAIA,Y,C,6HAGF,sB,oI,CAGA,Y,qHAMG,qB,M,6C,C,MAMF,0C,M,OAIK,yB,M,oC,C,CAKJ,uCACG,8B,MACF,gCACA,kC,MAEC,oB,C,4B,C,C,CAMA,wC,e,gD,CAIJ,sCACA,mC,OAEC,oB,C,gC,qHAME,qB,M,oC,C,MAMF,0C,M,OAIK,yB,M,oC,C,CAKJ,uCACG,8B,MACF,gCACA,uB,MAEC,oB,C,4B,C,C,CAMA,wC,e,gD,CAIJ,sCACA,wB,OAEC,oB,C,gC,uE,WAwBA,qB,4B,CAGD,qB,4B,uOClgBK,OACL,gK,2MAIA,qC,+BAIA,oC,8IAYI,8C,UAGH,K,CAGD,IACA,oGACA,OACC,iBACA,c,cAED,O,cAGA,OAEC,+JACA,OACC,8C,QACC,iBACA,c,QAED,KACA,I,eACD,OACC,IACA,I,sBAEA,K,Q,qBAID,+BACA,c,OAKD,IACA,WACC,oCACD,iBACC,2B,MAEA,wG,CAGD,6EAEA,0CACK,IACJ,kBACA,mHACA,QACC,gB,eACD,QACC,8B,eACD,QACC,8B,uBAEA,mBACA,iBACA,c,QAED,mD,QACC,mBACA,iBACA,c,QAGD,0F,QAEC,qCACA,gBACA,c,QAED,+BAEA,kEACA,gJ,QAEC,qCACA,gBACA,c,QAED,IApCiB,W,uB,oCAyCnB,O,qD,gJ,UAwBE,K,C,iB,wD,CASD,IACA,Q,yBAEC,iB,+BAEA,OACA,iB,CAIG,mBACJ,yB,iGAEC,kCACA,wB,0C,CAGD,gD,+D,uG,C,6D,oG,CAOA,6B,MAEC,+B,C,oC,qEC3KI,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,iMC5RK,OACL,cAEA,c,oBAIC,qBACA,2CACA,W,CAID,kD,wJAGC,kE,C,uFAKA,2BACA,W,C,2DAMA,mBACA,oDACA,O,uIAGA,S,CAGD,qIACA,2J,UAEC,mH,CAED,Y,iPAOK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,izF,4F,4F,4F,O,mC,6I,qE,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;24HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,0VASL,sFACA,kGACA,4KACA,SACA,Y,yYAWA,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,kZASA,sFACA,2GACA,4KACA,SACA,Y,sXAaA,sFACA,2GACA,wBACA,SACA,S,kZAWA,sFACA,yGACA,4KACA,SACA,Y,wXAaA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;2bCzU1B,gBACA,iCACC,qGAEA,sH,OACC,S,qBAEA,I,O,qBAIF,S,wXA6BA,8DAAyC,0G,2G,wVAUpC,OAAsC,iK,+N,QCxF1C,S,CAED,S,mPAKI,0CACC,gLACH,mGADuC,W,qBADlB,W,qB,uZAUvB,IACA,OACC,oB,SAEC,c,CAED,mM,OACC,W,OAED,uI,OACC,O,OAED,0GACA,I,qB,maAKD,IACA,IACA,SAGI,kIACH,6FAD8B,W,qBAK3B,2CACH,mGACA,6FAFwB,W,qB,mZAYzB,4H,OACC,8F,OAGD,4H,OACC,8FAEA,+H,OACC,gG,Q,O,mXAOE,qCACH,wGADkB,W,qB,+hBAMnB,qGACA,6C,OAEC,gGACA,kHACA,uGACA,qI,OAED,kGAYA,IACA,0CACA,OACC,kCACC,kP,QACC,W,e,QAEA,gGACA,WACA,W,uBAEA,e,Q,sBAGF,mCACC,4P,QACC,W,e,QAEA,0GACA,WACA,W,uBAEA,e,Q,uB,SAID,c,CAGD,qGACA,WACA,W,qBAGD,mBACA,oGAEA,mBACA,oG,sD,+fAMA,wCACC,uC,OACC,2FACA,O,OAED,WACA,wGAGA,mD,OACC,+FACA,I,qBAEA,+FACA,I,O,qBAGF,8C,QACC,6F,Q,oXASD,yFACA,IACI,kCACH,WADkB,uB,CAGnB,eACA,6F,sLA4DK,OAAqC,iB,gHACrC,OAAqC,gL,4HACrC,OAAqC,4V,+QAGrC,OAAwB,uF;0hFCpL7B,UACA,qF,2DAGK,OACL,+BACA,UACA,S,kDAGK,OAAkC,2B,4NAElC,OAAgC,4I,oLAEhC,OAAkC,Y,iCAavC,UACA,8F,2DAGK,OACL,mCACA,iDACA,S,kDAGK,OAAiC,+B,4NAEjC,OAA+B,4I,8JAMpC,UACA,wI,2DAGK,OACL,mCACA,8BACA,S,oDAGK,OAAmC,8C,4NAEnC,OAAiC,qI,4JAMtC,UACA,gG,2DAGK,OACL,oCACA,qBACA,S,kDAGK,OAAkC,iC,4NAElC,OAAgC,4I,8JAMrC,UACA,yI,2DAGK,OACL,oCACA,8BACA,S,oDAGK,OAAoC,+C,4NAEpC,OAAkC,qI,4JAMvC,UACA,qF,qDAGK,OACL,UACA,iB,kDAGK,OAAoC,6B,4NAEpC,OAAkC,4I,4JAMvC,UACA,qF,2DAGK,OACL,mCACA,UACA,S,kDAGK,OAAqC,8B,4NAErC,OAAmC,4I,8JAMxC,UACA,4I,2DAGK,OACL,mCACA,8BACA,S,oDAGK,OAAsC,kD,yDAEtC,OAAoC,qJ,+SA6DzC,4CACA,IACA,kE,kB,a,OACC,4FACA,W,KAED,2FACA,2BACA,yIACC,uI,KAED,S,kOAGK,O,0CAEJ,gB,CAED,gB,2GAKK,OACL,W,iUAKK,OACL,kOACC,uF,yB,6dAYI,OACL,kOACC,uF,yB,8QAWI,OACL,+D,qWAUK,OACL,wFACA,oC,OACC,wJ,OAED,gG,sCAEC,S,C,qBAGA,Y,CAED,kGACA,iB,2QAWA,IACA,gBACC,YACD,iBACC,YACD,kBACC,Y,CAED,a,oDAUA,UACI,yC,yBAEE,8C,yBAEF,0BACA,2C,4B,CAH8B,W,CAOhC,M,CAT0B,W,CAa5B,UACA,UACA,6BACC,KACD,oCACC,aACD,oCACC,UACD,+DACC,QACD,oCACC,WACD,+DACC,S,CAED,Y,gPAMK,UACL,uTACC,kIACA,sB,eAEC,Y,C,gBAKA,W,MAIA,iB,CAED,QACA,iD,OACI,yE,OAEF,kJ,qBAEA,kJ,O,OAGF,+I,qQ,4XAwBD,mH,kUAKA,6C,OACC,wH,qBAEA,iJ,OAED,oG,oKAkBK,OAA0B,8B,2GAQ1B,O,2BAEJ,S,CAED,sG,qGAWK,OAAyB,sB,qGAMzB,OAA8B,c,iTAO9B,OACL,oG,ydAWK,OACL,4BACA,qGACA,S,mcAWK,OACL,oG,qdAWK,OACL,wBACA,oGACA,S,kcAWK,OACL,oG,6dAWK,OACL,sCACA,sGACA,S,ucAWK,OACL,oG,ydAWK,OACL,wBACA,qGACA,S,scAWK,OACL,oG,ieAWK,OACL,uCACA,uGACA,S,4cAWK,OACL,oG,ieAWK,OACL,yBACA,uGACA,S,yaAMA,iI,2XAKK,OACL,oG,qeAWK,OACL,wBACA,wGACA,S,idAYK,OACL,oG,yeAaK,OACL,0CACA,yGACA,S,2hBAgBK,OAEL,8GACA,iFACA,mC,OACK,KACJ,6C,OACC,0I,qBAEA,iK,OAED,4HACA,uB,O,qBAGA,Y,CAED,kG,ghBAeK,OACL,+FACA,+GACA,4FACA,S,6ZAKK,OACL,iE,OACC,sD,OACC,+F,qBAEA,wF,O,qBAGD,4F,O,wsBAKI,O,uBAEJ,wB,CAED,2F,8DAEC,wB,CAED,I,yBAEC,W,iBAEC,2BACA,wB,C,CAGF,iBACA,gG,OACC,iK,OAID,2BACA,QACA,KACI,yC,yBAEF,wBACA,OACA,mBACA,M,CALyB,W,CAQ3B,WACA,iFACA,oC,OACC,qD,OACC,4FACA,2B,OAED,oL,OAGE,8N,QACF,qC,QACI,iK,QACF,uM,Q,uBAGE,sK,QACF,qL,Q,Q,uB,yBAOD,OACA,sI,CAED,sC,QACC,mL,QAEE,+K,QACF,2M,Q,Q,qBAID,Y,CAED,qGACA,uB,6qBAOK,OACL,cACA,SACA,OACC,4G,MAEC,c,C,mCAGA,c,CAED,kBACA,UACC,SACD,gBACC,UACD,gBACC,U,C,qBAGF,iB,mQAIK,OACL,gB,oPAOA,2H,uJAgBA,2EAIA,S,wEAMK,OACL,SACA,kB,40L,4F,4F,4F,4F,4F,4F,4F,2C,gH,4MAjcA,oOACA,uF;6pBC7dK,O,sBAEJ,qG,CAED,4B,gHAGK,O,mB,oDAGH,eACA,O,CAED,mCACA,2C,CAED,uGACA,e,2GAGK,O,mBAEJ,mD,CAED,iF,2GA8BA,IACA,QACA,iB,W,mCAIE,Y,CAED,a,CAED,qCAOA,WACA,4BACA,gB,MAEC,aACA,gB,CAGD,8BAEC,uCAEC,WACD,8FAEC,WACD,6HAEC,WAEA,UAEC,eACA,kEACC,e,CAEF,a,UAGE,a,CAED,aACA,aACA,M,C,M,sCAMA,a,CAGD,mEACC,0BAD4C,W,C,C,C,YAQ9C,a,CAGD,qB,wCAkBC,SAED,+B,4CA+BA,a,wCC3LA,S,oCAqBA,yI,cAEE,qC,C,KAGF,S,uwB,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCiGC,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;+0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAgBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,wJAIa,cACb,0CACA,IACA,UACC,oMACA,IACD,gBACC,oMACA,oMACD,gBACC,IACA,oMACD,gBACC,oMACA,IACD,gBACC,0MACA,gN,MAGA,IACA,I,CAED,2CACA,2CACA,2CACA,qBACA,yG,msZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eCzJoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;ugDC9EA,0F,iD,UAaC,S,CAED,gG,yD,UAKC,S,CAED,oK,gD,UAKC,S,CAED,kG,2D,UAKC,a,CAED,6K,2FC3BK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;stJCpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,oGAQA,yV,8DCtGK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,2gBAoBI,YACA,eACJ,uQACK,SACA,SACJ,wD,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,0O,yCAGA,oB,CAEE,iK,OACF,iB,OAED,uDACA,uB,oYAUI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,4HCPA,8B,iDAkBA,2B,uDAQA,0B,gDAQA,6B,yDAQA,0C,+wBCnBA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;qgB,4F,4F,4F,4F,4F,4F,4F,4F,4F;4Q;+5CCxvBK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;2vBCpcA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,qY,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G;kwCCzBK,OAEL,mC,uSAIA,KAOA,+CAEA,uH,sCAEC,U,CAED,uC,qLAQK,OACL,oB,+IAGK,OACL,qDACA,qCACA,8BACA,+B,Q,gD,C,yF,uJAOK,OACL,2B,W,gD,CAIA,6GACA,2J,yF,kbAIK,OACL,mHAGA,kBACA,sBAEA,sHAEA,UACA,UACA,UACA,U,QAEC,QACA,QACA,Q,CAED,wBAEA,yH,yoBAGK,OACF,6O,OACF,S,OAEE,4K,OACF,S,OAED,iB,muD,4F,4F,4F,4F,4F,4F,kH;osCCnDK,O,sBAEJ,gC,C,mBAGA,6B,C,8BAGA,sD,C,2BAGA,qC,C,gIAII,OACL,gBACA,aACA,wBACA,qB,oJAGK,OACL,uBAEA,8BACA,2BAEA,6BACI,kCACA,uG,MADyC,W,S,C,kCAK3C,6FACA,6HACA,Y,CAP2C,W,CAW7C,sBACI,kCACH,qB,kBAGI,sG,OACF,0GACA,4HACA,Y,C,C,oBAIE,uG,OACF,2GACA,6HACA,Y,C,CAdiB,W,CAmBpB,a,2IAGK,OACL,uBAEA,8E,MAEC,qC,CAED,sG,MAEC,wB,eAEC,qB,MAEA,sB,C,CAGF,a,iYAGK,OACL,uBAEA,8EACA,mC,OACC,yJ,OAGD,sGACA,mC,OACC,4C,OACC,oJ,OAEA,oJ,O,OAIF,S,wgD,4F;yxICzHK,OACL,OACC,uH,sC,+BAGE,gB,CAED,S,CAED,yCACA,yB,iBAEC,a,MAEA,0C,C,gBAGA,c,C,qBAGF,iB,ygBAKK,OACL,iD,OACI,0K,OACF,Y,O,OAGF,8BACA,2CACA,yBACA,sE,gBAEC,4C,CAED,oB,69BAKK,OACL,iC,SAEE,qC,CAEE,8L,OACF,S,OAED,wB,QAEC,6B,CAED,oB,6BAEC,6B,CAED,uJAKA,WACI,YACJ,2CACC,8JACA,0F,K,iBAGA,8C,C,iBAGA,mD,CAED,+B,QAEC,qC,CAEE,qM,OACF,S,OAID,gDACC,+E,KAEG,gBACA,kCACH,+BACI,qGAMH,qDACA,wIACI,8EACH,qGADgC,mB,CAGjC,YACA,YAZiC,a,CAFF,Y,CAmB7B,sBACJ,2H,WAEE,2FACA,2FACA,8F,MAEA,2FACA,0GACA,8FACA,cACA,c,CAED,gC,M,qBAGF,iB,i+BAKK,O,iBAEJ,+C,CAGD,4C,OACI,qK,O,uEAED,Y,C,iCAMA,0B,CAED,c,O,OAGC,mJ,eACF,6BACA,8BACA,2CACA,8C,CAGF,OACK,kDACH,+C,OACI,yK,QACF,Y,Q,Q,uCAID,Q,CAED,yBACA,2C,yFAEC,mR,CAED,2BAd8C,W,qBAgB/C,oC,6kBAGK,OACL,8C,OACI,qK,OACF,gB,O,OAGF,qCACA,yBACA,2CACA,oB,8dAGK,OACL,4C,OACI,qK,OACF,Y,O,OAGF,sDACA,sDACA,yBACA,iDACA,oB,2bC3KI,kCACH,a,irBAIC,mGACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FAbiB,W,S,CAkBlB,+GACA,oGACA,6FACA,kGACA,kGACA,kGACA,kGACA,kGAGA,2BACA,0BACA,0BACA,4BACA,yBACA,0BAGA,UACA,WACA,0BACA,uBACA,yBACA,WACA,cACA,YACA,cAGA,YACA,cACA,UACA,WACA,6CACA,8CAGA,iHACA,iHACA,iHACA,kHACA,kHACA,iHACA,iHACA,iHA9DkB,W,CAkEf,oCAMH,qHACA,0GACA,oGACA,oGACA,mGACA,oGACA,oGACA,oGAGA,kCACA,oCACA,oCACA,mCACA,mCACA,oCAGA,YACA,cACA,mCACA,oCACA,oCACA,YACA,cACA,YACA,cAGA,YACA,cACA,YACA,cACA,8CACA,8CAGA,oHACA,oHACA,qHACA,qHACA,qHACA,qHACA,qHACA,qHAlDkB,a,C,0CCrHd,YAAgC,gC,qHAKhC,YAAqC,qC,gXAsHrC,O,+BAEJ,iE,C,gBAKA,mHACA,mHACA,gC,CAGD,kJACA,2B,QAEC,Y,CAED,S,0SAQK,OACL,6CACA,sB,gBAEC,2CACA,yBACA,2C,C,wYAMI,OACL,mDACI,6J,O,4B,O,qBAIJ,iGACA,2BACA,sB,oC,osBASK,O,gCAGJ,iGACA,2BACA,sB,iB,4B,C,4G,mC,CAOA,2BACA,sB,sC,CAID,sBAEA,4G,sC,4B,CAIA,sB,iB,oC,CAKA,4G,sC,4B,CAIA,sB,e,mC,C,wC,2nBASK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,mEACA,iBACA,2B,kBAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,8bAIK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,yB,QAEC,I,CAED,2BACA,W,UAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,isBAIK,O,qBAEJ,qC,CAED,IACA,UACC,UACD,iBACC,UACD,iBACC,U,MAEA,qC,CAEE,6L,OACF,S,O,sBAIA,0B,CAED,gDACA,+C,iCAEC,qC,CAGG,wCACH,iLAGI,kC,sKAEF,8C,CAFiB,W,CAMnB,kL,uFAEC,6B,CAGD,mGACA,oD,uBAEC,8C,C,qBAGA,gB,CAED,UACA,UAYC,gBAED,gBAQC,KACA,W,UAKE,gB,CAEF,iB,6KAEE,gB,CAEF,iB,+CAEE,gB,C,CAIH,gBAUC,KACA,W,6BAEE,gB,CAEF,yB,gBAEE,gB,CAEF,iB,+CAEE,gB,C,C,CAKH,qFACA,qFA3FwB,W,CA6FzB,iB,k3BAIK,OAEL,iCACC,WACA,4G,sCAEC,S,CAED,a,QAEC,6B,CAED,iFAGA,O,SAEE,gB,CAED,YACG,+L,OACF,S,QAED,wHACC,wO,K,cAEF,O,UAEE,gB,CAED,aACG,mM,QACF,S,QAED,wHACC,+W,K,qBArBD,6B,O,qB,eA0BD,qC,CAED,iB,6mBAIK,O,eAEJ,qC,CAEE,6L,OACF,S,OAED,4CACA,iB,idAGK,OACL,qC,OACC,8G,OAEE,6L,OACF,S,OAED,WAEA,0FAEA,qC,OACC,kH,OAED,iB,qfAGK,OACL,sC,OACC,8G,OAEE,8L,OACF,S,OAED,Y,2FAGC,2BACA,2B,CAGD,qC,OACC,kH,OAED,iB,kqBAIK,OACL,MAGG,6L,OACF,oB,O,6CAGA,8C,CAID,OACC,0H,sCAEC,oB,CAED,iDAqBC,kBACA,mH,sCAEC,oB,C,qBAGF,WACA,yC,QAEC,c,QAED,uCAGC,8G,sCAEC,oB,C,uB,YAID,c,CAED,kD,QAOC,c,QAKE,iM,QACF,oB,QAED,gD,QAEC,gD,CAGD,yOACA,QACC,sBACA,mG,cAEC,oB,C,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,Q,MAEE,4B,CAED,mG,eACD,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,0G,eACD,QACC,2G,uBAEA,uF,QACC,+F,e,QAEA,0B,uBAEA,0B,Q,Q,sCAID,oB,C,qB,uBAID,yB,C,uB,2BAIC,sB,oBAEA,wB,CAED,yB,CAED,8C,igBAUK,O,2BAEJ,mG,C,8BAYA,sCACA,eACA,8BACI,0DACC,+DACH,gRADoD,2BADH,kCAKnD,4E,CAYD,sCACA,eAEA,mLASA,0HACC,6MACI,iEACH,iB,OAEC,iG,CAEG,uEACH,iB,OAEC,iG,CAED,yPALoD,mCALH,0C,KAcpD,oB,gHAGK,O,WAEJ,a,C,kDAKA,Y,CAED,iE,wKAGK,OACL,2GACA,sCACA,eACI,8CACH,yBACA,4BACA,4BACI,+DACH,qOACA,yTACA,6TACA,sIAJsD,W,CAJf,W,CAWzC,oB,iRAKI,2KACJ,oH,oWAMI,2KACD,4K,OACF,0C,OAED,UACA,UACC,iEAKD,gBACC,e,cAEC,c,CAED,uDAKD,gBACC,iE,CAMD,oE,+KAIA,wC,mFCrxBK,O,gBAEJ,+CACA,gEACA,O,CAGD,cACA,cACA,iGACA,iGACI,IACJ,cACA,WACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,I,MAEA,mC,CAED,wEACA,gE,gBAGC,oCACA,mFACA,oC,C,++DAKI,O,gBAEJ,mC,C,4GAGA,qC,CAEE,6L,OACF,S,OAED,gB,iCAEC,kE,CAEG,YAKJ,IACI,kCACH,mGACA,KACA,qL,YAEE,I,C,K,QAID,2C,CAED,0FAMI,kC,gKAEF,4C,CAFiB,W,CAKnB,kLAEA,oL,4EAEC,6B,CAED,gL,4EAEC,6B,CA9BqB,W,C,oBAoCtB,iD,CAmBD,2C,kBAEC,gHACA,gHACA,gIACA,4H,2CAEC,8C,C,4BAGA,wE,C,sCAGA,oD,C,CAKF,0CACA,8IACA,+I,qCAEC,iB,C,kBAGI,oCACH,mF,uGAEC,sT,CAHqB,a,C,CAQxB,gCACA,wBAGC,eACA,aAGA,sBACA,KAEG,wCACC,wCACC,uCACH,mFACA,yFACA,yFACA,kLACI,sDA0BH,8C,QACC,wFACA,kH,uBAEA,gBACA,sEACA,gGACA,a,oDAjCqB,a,e,C,Q,kBAyCrB,2O,MAEA,uB,CAGD,+C,QACI,mX,QACF,U,Q,uBAGD,MACA,0C,QACC,aAEA,gS,uCAEC,U,C,UAGA,uC,CAED,gI,uCAEC,U,CAED,0JACA,2G,QAGD,sD,QACC,+B,uBAGA,sKACA,sCACC,gI,uCAEC,U,CAED,mBACA,eACA,+C,QACC,mB,UAEC,e,CAED,gI,uCAEC,U,CAED,qL,uBAEA,gD,QACC,4CACA,+C,QACC,kI,uCAEC,U,CAED,wC,QAED,+BACA,e,QAED,c,QA9BmB,a,uB,Q,Q,kB,8BAuCrB,2OAlHoB,a,e,C,CA6HlB,qCACH,+YAD8B,a,CAG/B,QACA,2B,gBAEC,qG,MAEA,MACA,WACC,qGACD,iBACC,sGACD,iBACC,sGACD,iBACC,qG,MAEA,oC,C,CAIE,oCACH,eACA,gBACI,oCACH,6F,YAEC,K,iBAEA,O,MAEA,e,CAED,uHATkB,a,CAHD,a,CAnJG,a,uBALD,a,qBAyKvB,aACA,yI,QAGI,yM,QACF,U,Q,4CAGA,+B,CAED,mB,aAEC,O,CAGD,gCAEA,sBAEA,W,QA7LqB,a,qBADD,a,qBAmMvB,iB,m/DAKK,OAEL,uC,O,eAEE,mC,CAED,6G,sCAEC,S,C,MAGA,wC,CAED,iB,OAID,IACA,8C,OAEC,kCACC,IACA,kH,sCAEC,S,CAED,iBACA,aAEA,sEACA,OACC,+C,QACC,wCACA,8C,QACC,sH,sCAEC,S,CAED,uC,QAED,gB,Q,eAEF,QACC,IACA,iH,uCAEC,U,C,QAGA,K,C,uBAGD,wC,QAGD,4I,sCAEC,S,C,QAGA,sC,C,eAGA,2J,CA3CmB,W,qB,OA+CtB,8C,QACC,+BACG,uM,QACF,U,Q,QAGF,iB,0uBAKK,OACL,kCACC,qEACA,qH,O,UAEE,c,CAED,WANmB,W,c,OASpB,6G,sCAEC,Y,C,OAXmB,W,c,C,uFAiBnB,uK,MAEA,uK,CAnBmB,W,qBAsBrB,oB,oXClSyB,eAApB,OACL,IACA,2I,aAEE,S,C,KAGF,8FACA,gBACI,mCACH,yBACI,+GACH,iNACA,YACA,WAHkC,iB,CAKnC,4BAP6B,W,C,iCAe9B,2HACC,2B,K,8iK,4F,4F,4F,4F,4F,yG,uB,kC,mN,4B,iiD,I;+vCC/KI,OACL,OACC,4FACA,cACA,uE,yEAEC,S,CAED,uC,OACC,qN,OAED,6Y,OACC,S,Q,qB,oR,QClBD,e,CAED,c,qTAWK,OACL,OACC,iGACA,QACA,uE,4EAGC,S,CAGD,uC,OAEC,OACC,wMACA,wL,aAEC,c,C,qB,QAID,wB,CAED,wB,OAED,mZ,QACC,S,Q,qB,8SCnCE,4BACJ,UACA,S,4CAU4B,oB,gOAGvB,OAA4B,gG,6YAG5B,OAAyB,gH,kYAGzB,OAA2B,2I,6YAG3B,OAAyB,2K,+YAGzB,OACL,sGACA,gC,ueAKK,O,0CAEJ,kD,CAED,kJ,OACC,gM,OAED,0JACA,2FACA,mFACC,2F,qBAED,wB,ohBAKK,O,SAEJ,kD,CAED,oD,OACC,uH,OAED,oGACA,2FACA,iCACC,2F,qBAED,mE,kdAKK,O,SAEJ,gD,CAED,+C,OACC,uH,OAED,sK,gaAIK,OAmBL,6H,UAEC,I,CAED,S,yZAIK,OAOL,sG,UAEC,I,CAED,S,kbAIK,OACL,mBACI,qCACH,gGACA,0KACA,uFAHkB,W,qBAKnB,S,wbAkFK,OACL,YACA,+FACA,cACA,S,2YAGK,OACL,YACA,gGACA,c,8NCvDA,2FACA,mEACA,sC,QAEC,oB,CAED,S,iEAIK,OACL,QACA,WAEA,0C,yCAEC,yE,C,8BAGA,yB,CAGD,2CACI,sCACH,Q,SAEK,kBACJ,mCACA,QACA,uFACA,QACA,sEACA,2HACA,oI,CAVsB,W,C,4HAgBnB,OACL,mB,YAEC,qB,CAGD,qB,aAEC,uB,CAGD,wRACA,wFACA,S,47D,4F,4F,uxF,+lL,o8J,u5C,ozF,u9E,8unB;onMCvNA,oD,6EAGK,O,eAEJ,Y,C,QAGA,a,C,UAGA,Y,CAED,sK,sIAGK,OACL,2B,mJAGK,O,6BAEJ,S,CAED,c,kKAGK,O,6BAEJ,S,CAED,c,kKAGK,OACL,gC,yJAGK,O,6BAEJ,S,CAED,c,sJAGK,O,8CAEJ,S,CAED,+B,mKAGK,O,6CAEJ,S,CAED,8B,6JAGK,OACL,sB,kBAEC,gB,C,mIAII,OACL,sB,wHAGK,OACL,kB,gIAGK,OACD,oC,uBAEF,Y,CAFmC,W,CAKrC,a,+HAGK,OACD,mC,+JAEF,a,CAF8B,W,CAKhC,Y,0IAGK,OACL,yJ,gIAGK,OACL,IACI,oC,wBAEF,W,CAFmC,W,CAKrC,S,iJAGK,OACD,mC,+JAEF,a,CAF8B,W,CAK5B,mCACC,mCACH,uTAD+B,W,CADX,W,CAKlB,mCACH,qFAD+B,W,CAGhC,Y,wRAGK,OACL,iD,OACC,iCACA,kD,OACC,kBACA,4E,OACC,qG,O,O,OAIH,iB,+OAGK,OACL,oCACA,sBACA,iBACA,wBACA,wBACA,wBACA,qBACA,S,mcAGK,OACL,oBACA,oBACI,mCACH,uGACA,uGAF+B,W,CAI5B,mC,uBAEE,mCACH,qUAD+B,W,C,MAI5B,mCACH,qUAD+B,W,C,CANF,W,CAW7B,kM,OACF,S,OAEE,kL,OACF,S,OAED,iB,ukBCjLA,qCACA,uGACA,+I,qaAIA,qCACA,kBACA,+I,yKCKA,+J,wPAKK,OACL,iBACA,wIAIA,sGACA,iB,uNCjBA,6B,iVAGK,O,uBAEJ,8B,C,gCAGA,8BACA,0B,C,4BAIA,yC,CAED,6IACC,kD,OACC,+SACA,kB,O,uBAGA,4GACA,kB,CAED,2G,yB,0BAIA,+C,2BAEC,0B,CAED,iB,CAGD,6G,oCAEC,qC,gCAEC,uB,C,CAGF,iB,ilBAGK,OACL,6H,4BAGC,iB,CAGD,iKAiBA,K,gCAEC,Q,CAED,6pBACG,uO,OACF,S,OAED,iB,qT,8B,2CCrEA,oB,2C,2CAKA,qB,kC,6BAKA,cACA,gB,2CAIA,qB,kC,2CAKA,qB,kC,2CAKA,qB,kC,khBAKI,YAEJ,mH,sCAEC,U,CAED,6HAEA,0I,sCAEC,U,CAID,qH,sCAEC,U,CAGD,oBACG,sK,OACF,U,OAGD,qBACG,iO,OACF,U,QAED,qBACG,wK,QACF,U,QAGD,qBACG,+K,QACF,U,QAGD,qBACG,+K,QACF,U,QAGD,wBACG,uL,QACF,W,QAID,gI,sCAEC,U,CAED,2JACA,MACG,oO,QACF,W,Q,moBAKD,iHACA,yBACA,sBACA,sBACA,2BACA,mH,maAMG,2N,OACF,S,OAED,YACG,mK,OACF,S,OAED,iB,mZAIA,YACG,mN,OACF,S,OAED,iB,oKAoBA,kG,0WAMK,OACF,kM,OACF,S,OAGD,yBACA,QACA,QACA,I,QAEC,I,CAGD,iHACA,4BACA,kBACA,0BAEA,MACA,kCACA,iBACA,gCACA,kGACA,kCACA,mH,6hBAMK,OACL,IACA,4GACA,6D,wRAGK,OACL,iBACA,iDACA,kBACA,kBACA,uBACA,sB,kIAGK,OACL,kG,kHAGK,OACL,IACA,IACA,UACC,MACD,gBACC,MACD,gBACC,MACD,gBACC,O,MAEA,iC,CAED,mD,wbAGK,UACL,mG,kB,gCAKE,0B,CAED,iB,CAGD,2CAGA,4D,OACC,2M,OAED,yD,OACC,iH,OAGD,QACA,oBACA,yB,2BAIC,oBACA,qBACA,qB,mCAEC,4DACA,kC,C,kCAGA,2DACA,kC,CAEE,yB,yFACF,uDACA,8B,CAEE,0B,yFACF,wDACA,8B,CAEE,yB,8EACF,iDACA,8B,MAEC,6B,C,C,C,2BAOF,qBACA,yBACA,oFACA,sDACC,wDACA,mFACA,8B,C,CAIF,sJ,OACC,oB,e,Q,6BAGC,4C,MAEA,2C,CAED,yD,QACC,kEACA,yD,QACC,sOACC,6B,QAEC,iB,CAED,qG,gH,uBAGD,uG,Q,Q,QAKH,iB,sgBAGK,OACL,gCACA,2GACA,iB,yFAEC,gB,C,urBAII,OACF,wK,OACF,S,OAGE,0K,OACF,S,OAID,qBACG,mL,OACF,S,OAID,qBACG,yL,QACF,S,QAID,qBACG,uL,QACF,S,QAID,oBACG,4K,QACF,S,QAED,mF,QACC,mCACA,mCACG,uM,QACF,S,Q,QAGF,2D,QAEC,oBACA,WACG,0M,QACF,U,Q,QAIF,8C,QACC,6G,QAGD,iB,4bC/WK,OACL,yF,2IAGK,OACL,mG,kKAGK,OACL,sG,qLAGK,OACL,sD,4BAEE,qFACA,a,CAED,+K,KAID,gE,wCAEE,+FACA,a,CAED,mM,KAGD,sI,0CAEE,kGACA,a,CAED,yM,K,yHAII,O,qDAEJ,Y,CAED,yC,oJAGK,O,0BAEJ,Y,CAED,0C,6IAGK,OACL,oB,QAEC,S,CAED,qC,gIAGK,OACL,oB,QAEC,S,CAED,qC,iIAGK,OACL,oB,QAEC,S,CAED,qC,kRCtFI,YACJ,iJ,sCAEC,U,C,sKAaI,Y,UAEJ,S,CAED,c,yIAGK,Y,UAEJ,S,CAED,c,+IAuBA,2BACA,yIACC,8G,KAGD,yIACC,yIACC,yL,K,KAGF,S,yCAqEK,OACL,8G,2JAGK,OACL,8KACA,cACA,c,4D,uKAIK,OACL,8KACA,gL,U,gD,CAIA,4B,uD,2TAIgE,qBAChE,kJAIA,sBACA,oH,6MAGK,OACL,mBACA,iGACA,IAEI,uCACC,kC,+LAEF,W,CAFoB,W,CAKtB,WANqB,W,CAQtB,Y,2JAGK,OACL,mBACA,gBACA,IACA,UACA,gBACC,IACA,gBACD,gBACC,gBACA,gBACD,gBACC,gBACA,I,CAED,iM,kJAGK,OACL,mBACI,kCACC,kC,mDAEF,Y,CAFoB,W,CADD,W,CAOtB,a,8IAGK,OACL,2B,sJAGK,OACL,mBACI,kCACC,kC,uBAEF,sC,CAFoB,W,CADD,W,C,0YASjB,OACL,oNACA,kIACA,kH,ymBAGK,OACL,mBACA,mBACA,yDACC,sGACA,qI,uBAEE,0L,C,K,KAIH,gJ,ifC3OI,YACJ,sH,sCAEC,U,CAED,sH,sCAEC,U,C,+JAkBD,kC,yPAMK,OACL,wD,OACC,sH,OAED,2C,0BAEC,iBACA,iBACA,qB,CAED,iB,4fAGK,OACL,wD,OACC,oH,OAED,0FACG,uK,OACF,S,OAGD,0FACG,wK,QACF,S,QAGE,+K,QACF,S,QAGD,uBACA,iHACA,wBACA,wH,kTAGK,OACL,SACA,oB,oQCtEI,YACJ,qJ,sCAEC,U,C,4KASI,OACL,+BACA,8M,2KAGK,OACL,+BACA,+VACA,2JACA,0JACA,oBACA,oB,8D,6IAIK,OACL,+B,gD,gFAUA,sC,wDAMA,sI,yCAEE,Y,C,KAGF,a,gCAIA,6BACI,kC,mCAEF,Y,CAFwC,W,CAK1C,a,mDAGK,OACL,uB,gCAEC,0BACA,iB,C,gBAGA,0BACA,iB,C,gBAGA,yBACA,iB,CAED,iB,sXAGK,OACF,qL,OACF,S,OAEE,mK,OACF,S,OAGD,yBACA,0HACA,MACG,0P,OACF,S,OAED,iB,mfAGK,OACL,gBACA,+N,gfAMA,IACA,qCACA,kGACA,KACA,wM,o2U,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,0K,kC,wB,knB,yF,yF,yF;srBC1EA,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;gICtRA,iB,+C,wM,4F;utBCMA,4FACA,kD,OACC,mCACA,mE,OACC,sG,OAED,qBACA,sC,OAGD,cACA,yBACG,8L,OACF,wG,O,sb,4F,4F,4F,4F,4F,4F,uI,iD,O,wF,mB"} diff --git a/_docs/public/examples/hue.js b/_docs/public/examples/hue.js deleted file mode 100644 index d58199dba..000000000 --- a/_docs/public/examples/hue.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AM,AO,AQ,AT;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AM=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new AL.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewCMYK=AM;AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};AT=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=0;j=0;k=g;l=h;m=i;n=j;o=f;if(o===1){m=(p=((e.Max.X+1>>0))/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))-(q=e.Min.X/2,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===2){m=(r=((e.Max.X+1>>0))/2,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))-(s=e.Min.X/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(t=((e.Max.Y+1>>0))/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))-(u=e.Min.Y/2,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===3){m=k;n=(v=((e.Max.Y+1>>0))/2,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))-(w=e.Min.Y/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===4){m=(x=((e.Max.X+3>>0))/4,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))-(y=e.Min.X/4,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===5){m=(z=((e.Max.X+3>>0))/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))-(aa=e.Min.X/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(ab=((e.Max.Y+1>>0))/2,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero"))-(ac=e.Min.Y/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;}else{m=k;n=l;}ad=($imul(k,l))+($imul(($imul(0,m)),n))>>0;ae=($imul(k,l))+($imul(($imul(1,m)),n))>>0;af=($imul(k,l))+($imul(($imul(2,m)),n))>>0;ag=$makeSlice(AV,af);return new AS.ptr($subslice(ag,0,ad,ad),$subslice(ag,ad,ae,ae),$subslice(ag,ae,af,af),k,m,f,$clone(e,Q));};$pkg.NewYCbCr=AT;O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AH,AM,AN,AQ,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/jpeg"]=(function(){var $pkg={},$init,E,F,B,C,D,A,H,J,L,M,O,R,S,AD,AF,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BW,BX,BY,I,N,P,T,AE,AG,K,U,V,W,AH;E=$packages["bufio"];F=$packages["errors"];B=$packages["image"];C=$packages["image/color"];D=$packages["image/internal/imageutil"];A=$packages["io"];H=$pkg.huffman=$newType(0,$kindStruct,"jpeg.huffman","huffman","image/jpeg",function(nCodes_,lut_,vals_,minCodes_,maxCodes_,valsIndices_){this.$val=this;if(arguments.length===0){this.nCodes=0;this.lut=BF.zero();this.vals=BG.zero();this.minCodes=AW.zero();this.maxCodes=AW.zero();this.valsIndices=AW.zero();return;}this.nCodes=nCodes_;this.lut=lut_;this.vals=vals_;this.minCodes=minCodes_;this.maxCodes=maxCodes_;this.valsIndices=valsIndices_;});J=$pkg.block=$newType(256,$kindArray,"jpeg.block","block","image/jpeg",null);L=$pkg.FormatError=$newType(8,$kindString,"jpeg.FormatError","FormatError","image/jpeg",null);M=$pkg.UnsupportedError=$newType(8,$kindString,"jpeg.UnsupportedError","UnsupportedError","image/jpeg",null);O=$pkg.component=$newType(0,$kindStruct,"jpeg.component","component","image/jpeg",function(h_,v_,c_,tq_){this.$val=this;if(arguments.length===0){this.h=0;this.v=0;this.c=0;this.tq=0;return;}this.h=h_;this.v=v_;this.c=c_;this.tq=tq_;});R=$pkg.bits=$newType(0,$kindStruct,"jpeg.bits","bits","image/jpeg",function(a_,m_,n_){this.$val=this;if(arguments.length===0){this.a=0;this.m=0;this.n=0;return;}this.a=a_;this.m=m_;this.n=n_;});S=$pkg.decoder=$newType(0,$kindStruct,"jpeg.decoder","decoder","image/jpeg",function(r_,bits_,bytes_,width_,height_,img1_,img3_,blackPix_,blackStride_,ri_,nComp_,progressive_,jfif_,adobeTransformValid_,adobeTransform_,eobRun_,comp_,progCoeffs_,huff_,quant_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=new R.ptr(0,0,0);this.bytes=new BB.ptr(BA.zero(),0,0,0);this.width=0;this.height=0;this.img1=AX.nil;this.img3=AY.nil;this.blackPix=AV.nil;this.blackStride=0;this.ri=0;this.nComp=0;this.progressive=false;this.jfif=false;this.adobeTransformValid=false;this.adobeTransform=0;this.eobRun=0;this.comp=BC.zero();this.progCoeffs=BE.zero();this.huff=BI.zero();this.quant=BK.zero();this.tmp=BL.zero();return;}this.r=r_;this.bits=bits_;this.bytes=bytes_;this.width=width_;this.height=height_;this.img1=img1_;this.img3=img3_;this.blackPix=blackPix_;this.blackStride=blackStride_;this.ri=ri_;this.nComp=nComp_;this.progressive=progressive_;this.jfif=jfif_;this.adobeTransformValid=adobeTransformValid_;this.adobeTransform=adobeTransform_;this.eobRun=eobRun_;this.comp=comp_;this.progCoeffs=progCoeffs_;this.huff=huff_;this.quant=quant_;this.tmp=tmp_;});AD=$pkg.huffmanSpec=$newType(0,$kindStruct,"jpeg.huffmanSpec","huffmanSpec","image/jpeg",function(count_,value_){this.$val=this;if(arguments.length===0){this.count=AU.zero();this.value=AV.nil;return;}this.count=count_;this.value=value_;});AF=$pkg.huffmanLUT=$newType(12,$kindSlice,"jpeg.huffmanLUT","huffmanLUT","image/jpeg",null);AS=$arrayType(AF,4);AU=$arrayType($Uint8,16);AV=$sliceType($Uint8);AW=$arrayType($Int32,16);AX=$ptrType(B.Gray);AY=$ptrType(B.YCbCr);AZ=$structType([{prop:"src",name:"src",pkg:"image/jpeg",typ:AV,tag:""},{prop:"stride",name:"stride",pkg:"image/jpeg",typ:$Int,tag:""}]);BA=$arrayType($Uint8,4096);BB=$structType([{prop:"buf",name:"buf",pkg:"image/jpeg",typ:BA,tag:""},{prop:"i",name:"i",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"j",name:"j",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nUnreadable",name:"nUnreadable",pkg:"image/jpeg",typ:$Int,tag:""}]);BC=$arrayType(O,4);BD=$sliceType(J);BE=$arrayType(BD,4);BF=$arrayType($Uint16,256);BG=$arrayType($Uint8,256);BH=$arrayType(H,4);BI=$arrayType(BH,2);BJ=$arrayType($Int32,64);BK=$arrayType(J,4);BL=$arrayType($Uint8,128);BM=$structType([{prop:"compIndex",name:"compIndex",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"td",name:"td",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"ta",name:"ta",pkg:"image/jpeg",typ:$Uint8,tag:""}]);BN=$arrayType(BM,4);BO=$sliceType(O);BP=$arrayType($Int32,4);BQ=$sliceType($Uint32);BR=$ptrType(AF);BW=$ptrType(H);BX=$ptrType(J);BY=$ptrType(S);S.ptr.prototype.ensureNBits=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;case 1:d=b.readByteStuffedByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){if($interfaceIsEqual(f,A.EOF)){return new L(I);}return f;}b.bits.a=((b.bits.a<<8>>>0)|(e>>>0))>>>0;b.bits.n=b.bits.n+(8)>>0;if(b.bits.m===0){b.bits.m=128;}else{b.bits.m=(g=(8),g<32?(b.bits.m<>>0;}if(b.bits.n>=a){$s=2;continue;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ensureNBits};}$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;};S.prototype.ensureNBits=function(a){return this.$val.ensureNBits(a);};S.ptr.prototype.receiveExtend=function(a){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:b=this;if(b.bits.n<(a>>0)){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:case 2:b.bits.n=b.bits.n-((a>>0))>>0;b.bits.m=(e=(a),e<32?(b.bits.m>>>e):0)>>>0;g=(f=a,f<32?(1<>0;i=(((h=(b.bits.n<<24>>>24),h<32?(b.bits.a>>>h):0)>>>0)>>0)&((g-1>>0));if(i<(g>>1>>0)){i=i+(((((j=a,j<32?(-1<>0))+1>>0))>>0;}return[i,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.receiveExtend};}$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;};S.prototype.receiveExtend=function(a){return this.$val.receiveExtend(a);};S.ptr.prototype.processDHT=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,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;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;case 1:if(!(a>0)){$s=2;continue;}if(a<17){return new L("DHT has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,17));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return d;case 5:e=b.tmp[0]>>>4<<24>>>24;if(e>1){return new L("bad Tc value");}f=(b.tmp[0]&15)>>>0;if(f>3||!b.progressive&&f>1){return new L("bad Th value");}i=(g=(h=b.huff,((e<0||e>=h.length)?$throwRuntimeError("index out of range"):h[e])),((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]));i.nCodes=0;j=AW.zero();k=j;l=0;while(true){if(!(l<16)){break;}m=l;((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]=((n=b.tmp,o=m+1>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]))>>0));i.nCodes=i.nCodes+(((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]))>>0;l++;}if(i.nCodes===0){return new L("Huffman table has zero length");}if(i.nCodes>256){return new L("Huffman table has excessive length");}a=a-(((i.nCodes>>0)+17>>0))>>0;if(a<0){return new L("DHT has wrong length");}p=b.readFull($subslice(new AV(i.vals),0,i.nCodes));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return q;case 8:r=i.lut;s=0;while(true){if(!(s<256)){break;}t=s;(u=i.lut,((t<0||t>=u.length)?$throwRuntimeError("index out of range"):u[t]=0));s++;}v=0;w=0;x=v;y=w;z=0;while(true){if(!(z<8)){break;}y=(aa=(1),aa<32?(y<>>0;ab=0;while(true){if(!(ab<((z<0||z>=j.length)?$throwRuntimeError("index out of range"):j[z]))){break;}ad=(((ac=((7-z>>>0)),ac<32?(y<>>0)<<24>>>24);af=((((ae=i.vals,((x<0||x>=ae.length)?$throwRuntimeError("index out of range"):ae[x]))<<16>>>16)<<8<<16>>>16)|((2+z>>>0)<<16>>>16))>>>0;ag=0;while(true){if(!(ag<((ah=((7-z>>>0)),ah<32?(1<>>24))){break;}(ai=i.lut,aj=(ad|ag)>>>0,((aj<0||aj>=ai.length)?$throwRuntimeError("index out of range"):ai[aj]=af));ag=ag+(1)<<24>>>24;}y=y+(1)>>>0;x=x+(1)>>>0;ab=ab+(1)>>0;}z=z+(1)>>>0;}ak=0;al=0;am=ak;an=al;ao=j;ap=0;while(true){if(!(ap<16)){break;}aq=ap;ar=((ap<0||ap>=ao.length)?$throwRuntimeError("index out of range"):ao[ap]);if(ar===0){(as=i.minCodes,((aq<0||aq>=as.length)?$throwRuntimeError("index out of range"):as[aq]=-1));(at=i.maxCodes,((aq<0||aq>=at.length)?$throwRuntimeError("index out of range"):at[aq]=-1));(au=i.valsIndices,((aq<0||aq>=au.length)?$throwRuntimeError("index out of range"):au[aq]=-1));}else{(av=i.minCodes,((aq<0||aq>=av.length)?$throwRuntimeError("index out of range"):av[aq]=am));(aw=i.maxCodes,((aq<0||aq>=aw.length)?$throwRuntimeError("index out of range"):aw[aq]=((am+ar>>0)-1>>0)));(ax=i.valsIndices,((aq<0||aq>=ax.length)?$throwRuntimeError("index out of range"):ax[aq]=an));am=am+(ar)>>0;an=an+(ar)>>0;}am=(ay=(1),ay<32?(am<>0;ap++;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDHT};}$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.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.processDHT=function(a){return this.$val.processDHT(a);};S.ptr.prototype.decodeHuffman=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a.nCodes===0){return[0,new L("uninitialized Huffman table")];}if(b.bits.n<8){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits(8);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(d,new L(T)))&&!($interfaceIsEqual(d,new L(I)))){return[0,d];}if(!((b.bytes.nUnreadable===0))){b.unreadByteStuffedByte();}$s=6;continue;case 5:case 2:h=(e=a.lut,f=((((g=((b.bits.n-8>>0)>>>0),g<32?(b.bits.a>>>g):0)>>>0))&255)>>>0,((f<0||f>=e.length)?$throwRuntimeError("index out of range"):e[f]));if(!((h===0))){i=(((h&255)>>>0))-1<<16>>>16;b.bits.n=b.bits.n-((i>>0))>>0;b.bits.m=(j=(i),j<32?(b.bits.m>>>j):0)>>>0;return[((h>>>8<<16>>>16)<<24>>>24),$ifaceNil];}case 6:k=0;l=0;m=k;n=l;case 7:if(!(m<16)){$s=8;continue;}if(b.bits.n===0){$s=9;continue;}$s=10;continue;case 9:o=b.ensureNBits(1);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return[0,p];case 13:case 10:if(!((((b.bits.a&b.bits.m)>>>0)===0))){n=n|(1);}b.bits.n=b.bits.n-(1)>>0;b.bits.m=(q=(1),q<32?(b.bits.m>>>q):0)>>>0;if(n<=(r=a.maxCodes,((m<0||m>=r.length)?$throwRuntimeError("index out of range"):r[m]))){return[(s=a.vals,t=((u=a.valsIndices,((m<0||m>=u.length)?$throwRuntimeError("index out of range"):u[m]))+n>>0)-(v=a.minCodes,((m<0||m>=v.length)?$throwRuntimeError("index out of range"):v[m]))>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),$ifaceNil];}n=(w=(1),w<32?(n<>0;m=m+(1)>>0;$s=7;continue;case 8:return[0,new L("bad Huffman code")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeHuffman};}$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.$s=$s;$f.$r=$r;return $f;};S.prototype.decodeHuffman=function(a){return this.$val.decodeHuffman(a);};S.ptr.prototype.decodeBit=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.bits.n===0){$s=1;continue;}$s=2;continue;case 1:b=a.ensureNBits(1);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[false,c];case 5:case 2:d=!((((a.bits.a&a.bits.m)>>>0)===0));a.bits.n=a.bits.n-(1)>>0;a.bits.m=(e=(1),e<32?(a.bits.m>>>e):0)>>>0;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBit};}$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;};S.prototype.decodeBit=function(){return this.$val.decodeBit();};S.ptr.prototype.decodeBits=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;if(b.bits.n>0)>>>0),e<32?(b.bits.a>>>e):0)>>>0;f=(f&(((((g=(a>>>0),g<32?(1<>>0))-1>>>0)))>>>0;b.bits.n=b.bits.n-(a)>>0;b.bits.m=(h=((a>>>0)),h<32?(b.bits.m>>>h):0)>>>0;return[f,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBits};}$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;};S.prototype.decodeBits=function(a){return this.$val.decodeBits(a);};K=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,bq,br,bs,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;while(true){if(!(b<8)){break;}c=$imul(b,8);if(((d=c+1>>0,(a.nilCheck,((d<0||d>=a.length)?$throwRuntimeError("index out of range"):a[d])))===0)&&((e=c+2>>0,(a.nilCheck,((e<0||e>=a.length)?$throwRuntimeError("index out of range"):a[e])))===0)&&((f=c+3>>0,(a.nilCheck,((f<0||f>=a.length)?$throwRuntimeError("index out of range"):a[f])))===0)&&((g=c+4>>0,(a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g])))===0)&&((h=c+5>>0,(a.nilCheck,((h<0||h>=a.length)?$throwRuntimeError("index out of range"):a[h])))===0)&&((i=c+6>>0,(a.nilCheck,((i<0||i>=a.length)?$throwRuntimeError("index out of range"):a[i])))===0)&&((j=c+7>>0,(a.nilCheck,((j<0||j>=a.length)?$throwRuntimeError("index out of range"):a[j])))===0)){l=(k=c+0>>0,(a.nilCheck,((k<0||k>=a.length)?$throwRuntimeError("index out of range"):a[k])))<<3>>0;(m=c+0>>0,a.nilCheck,((m<0||m>=a.length)?$throwRuntimeError("index out of range"):a[m]=l));(n=c+1>>0,a.nilCheck,((n<0||n>=a.length)?$throwRuntimeError("index out of range"):a[n]=l));(o=c+2>>0,a.nilCheck,((o<0||o>=a.length)?$throwRuntimeError("index out of range"):a[o]=l));(p=c+3>>0,a.nilCheck,((p<0||p>=a.length)?$throwRuntimeError("index out of range"):a[p]=l));(q=c+4>>0,a.nilCheck,((q<0||q>=a.length)?$throwRuntimeError("index out of range"):a[q]=l));(r=c+5>>0,a.nilCheck,((r<0||r>=a.length)?$throwRuntimeError("index out of range"):a[r]=l));(s=c+6>>0,a.nilCheck,((s<0||s>=a.length)?$throwRuntimeError("index out of range"):a[s]=l));(t=c+7>>0,a.nilCheck,((t<0||t>=a.length)?$throwRuntimeError("index out of range"):a[t]=l));b=b+(1)>>0;continue;}v=(((u=c+0>>0,(a.nilCheck,((u<0||u>=a.length)?$throwRuntimeError("index out of range"):a[u])))<<11>>0))+128>>0;x=(w=c+4>>0,(a.nilCheck,((w<0||w>=a.length)?$throwRuntimeError("index out of range"):a[w])))<<11>>0;z=(y=c+6>>0,(a.nilCheck,((y<0||y>=a.length)?$throwRuntimeError("index out of range"):a[y])));ab=(aa=c+2>>0,(a.nilCheck,((aa<0||aa>=a.length)?$throwRuntimeError("index out of range"):a[aa])));ad=(ac=c+1>>0,(a.nilCheck,((ac<0||ac>=a.length)?$throwRuntimeError("index out of range"):a[ac])));af=(ae=c+7>>0,(a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae])));ah=(ag=c+5>>0,(a.nilCheck,((ag<0||ag>=a.length)?$throwRuntimeError("index out of range"):a[ag])));aj=(ai=c+3>>0,(a.nilCheck,((ai<0||ai>=a.length)?$throwRuntimeError("index out of range"):a[ai])));ak=$imul(565,((ad+af>>0)));ad=ak+($imul(2276,ad))>>0;af=ak-($imul(3406,af))>>0;ak=$imul(2408,((ah+aj>>0)));ah=ak-($imul(799,ah))>>0;aj=ak-($imul(4017,aj))>>0;ak=v+x>>0;v=v-(x)>>0;x=$imul(1108,((ab+z>>0)));z=x-($imul(3784,z))>>0;ab=x+($imul(1568,ab))>>0;x=ad+ah>>0;ad=ad-(ah)>>0;ah=af+aj>>0;af=af-(aj)>>0;aj=ak+ab>>0;ak=ak-(ab)>>0;ab=v+z>>0;v=v-(z)>>0;z=((($imul(181,((ad+af>>0))))+128>>0))>>8>>0;ad=((($imul(181,((ad-af>>0))))+128>>0))>>8>>0;(al=c+0>>0,a.nilCheck,((al<0||al>=a.length)?$throwRuntimeError("index out of range"):a[al]=(((aj+x>>0))>>8>>0)));(am=c+1>>0,a.nilCheck,((am<0||am>=a.length)?$throwRuntimeError("index out of range"):a[am]=(((ab+z>>0))>>8>>0)));(an=c+2>>0,a.nilCheck,((an<0||an>=a.length)?$throwRuntimeError("index out of range"):a[an]=(((v+ad>>0))>>8>>0)));(ao=c+3>>0,a.nilCheck,((ao<0||ao>=a.length)?$throwRuntimeError("index out of range"):a[ao]=(((ak+ah>>0))>>8>>0)));(ap=c+4>>0,a.nilCheck,((ap<0||ap>=a.length)?$throwRuntimeError("index out of range"):a[ap]=(((ak-ah>>0))>>8>>0)));(aq=c+5>>0,a.nilCheck,((aq<0||aq>=a.length)?$throwRuntimeError("index out of range"):a[aq]=(((v-ad>>0))>>8>>0)));(ar=c+6>>0,a.nilCheck,((ar<0||ar>=a.length)?$throwRuntimeError("index out of range"):a[ar]=(((ab-z>>0))>>8>>0)));(as=c+7>>0,a.nilCheck,((as<0||as>=a.length)?$throwRuntimeError("index out of range"):a[as]=(((aj-x>>0))>>8>>0)));b=b+(1)>>0;}at=0;while(true){if(!(at<8)){break;}av=(((au=0+at>>0,(a.nilCheck,((au<0||au>=a.length)?$throwRuntimeError("index out of range"):a[au])))<<8>>0))+8192>>0;ax=(aw=32+at>>0,(a.nilCheck,((aw<0||aw>=a.length)?$throwRuntimeError("index out of range"):a[aw])))<<8>>0;az=(ay=48+at>>0,(a.nilCheck,((ay<0||ay>=a.length)?$throwRuntimeError("index out of range"):a[ay])));bb=(ba=16+at>>0,(a.nilCheck,((ba<0||ba>=a.length)?$throwRuntimeError("index out of range"):a[ba])));bd=(bc=8+at>>0,(a.nilCheck,((bc<0||bc>=a.length)?$throwRuntimeError("index out of range"):a[bc])));bf=(be=56+at>>0,(a.nilCheck,((be<0||be>=a.length)?$throwRuntimeError("index out of range"):a[be])));bh=(bg=40+at>>0,(a.nilCheck,((bg<0||bg>=a.length)?$throwRuntimeError("index out of range"):a[bg])));bj=(bi=24+at>>0,(a.nilCheck,((bi<0||bi>=a.length)?$throwRuntimeError("index out of range"):a[bi])));bk=($imul(565,((bd+bf>>0))))+4>>0;bd=((bk+($imul(2276,bd))>>0))>>3>>0;bf=((bk-($imul(3406,bf))>>0))>>3>>0;bk=($imul(2408,((bh+bj>>0))))+4>>0;bh=((bk-($imul(799,bh))>>0))>>3>>0;bj=((bk-($imul(4017,bj))>>0))>>3>>0;bk=av+ax>>0;av=av-(ax)>>0;ax=($imul(1108,((bb+az>>0))))+4>>0;az=((ax-($imul(3784,az))>>0))>>3>>0;bb=((ax+($imul(1568,bb))>>0))>>3>>0;ax=bd+bh>>0;bd=bd-(bh)>>0;bh=bf+bj>>0;bf=bf-(bj)>>0;bj=bk+bb>>0;bk=bk-(bb)>>0;bb=av+az>>0;av=av-(az)>>0;az=((($imul(181,((bd+bf>>0))))+128>>0))>>8>>0;bd=((($imul(181,((bd-bf>>0))))+128>>0))>>8>>0;(bl=0+at>>0,a.nilCheck,((bl<0||bl>=a.length)?$throwRuntimeError("index out of range"):a[bl]=(((bj+ax>>0))>>14>>0)));(bm=8+at>>0,a.nilCheck,((bm<0||bm>=a.length)?$throwRuntimeError("index out of range"):a[bm]=(((bb+az>>0))>>14>>0)));(bn=16+at>>0,a.nilCheck,((bn<0||bn>=a.length)?$throwRuntimeError("index out of range"):a[bn]=(((av+bd>>0))>>14>>0)));(bo=24+at>>0,a.nilCheck,((bo<0||bo>=a.length)?$throwRuntimeError("index out of range"):a[bo]=(((bk+bh>>0))>>14>>0)));(bp=32+at>>0,a.nilCheck,((bp<0||bp>=a.length)?$throwRuntimeError("index out of range"):a[bp]=(((bk-bh>>0))>>14>>0)));(bq=40+at>>0,a.nilCheck,((bq<0||bq>=a.length)?$throwRuntimeError("index out of range"):a[bq]=(((av-bd>>0))>>14>>0)));(br=48+at>>0,a.nilCheck,((br<0||br>=a.length)?$throwRuntimeError("index out of range"):a[br]=(((bb-az>>0))>>14>>0)));(bs=56+at>>0,a.nilCheck,((bs<0||bs>=a.length)?$throwRuntimeError("index out of range"):a[bs]=(((bj-ax>>0))>>14>>0)));at=at+(1)>>0;}};L.prototype.Error=function(){var $ptr,a;a=this.$val;return"invalid JPEG format: "+a;};$ptrType(L).prototype.Error=function(){return new L(this.$get()).Error();};M.prototype.Error=function(){var $ptr,a;a=this.$val;return"unsupported JPEG feature: "+a;};$ptrType(M).prototype.Error=function(){return new M(this.$get()).Error();};S.ptr.prototype.fill=function(){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:a=this;if(!((a.bytes.i===a.bytes.j))){$panic(new $String("jpeg: fill called when unread bytes exist"));}if(a.bytes.j>2){a.bytes.buf[0]=(b=a.bytes.buf,c=a.bytes.j-2>>0,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]));a.bytes.buf[1]=(d=a.bytes.buf,e=a.bytes.j-1>>0,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));f=2;g=2;a.bytes.i=f;a.bytes.j=g;}i=a.r.Read($subslice(new AV(a.bytes.buf),a.bytes.j));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];a.bytes.j=a.bytes.j+(j)>>0;if(j>0){k=$ifaceNil;}return k;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.fill};}$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;};S.prototype.fill=function(){return this.$val.fill();};S.ptr.prototype.unreadByteStuffedByte=function(){var $ptr,a,b,c;a=this;a.bytes.i=a.bytes.i-(a.bytes.nUnreadable)>>0;a.bytes.nUnreadable=0;if(a.bits.n>=8){a.bits.a=(b=(8),b<32?(a.bits.a>>>b):0)>>>0;a.bits.n=a.bits.n-(8)>>0;a.bits.m=(c=(8),c<32?(a.bits.m>>>c):0)>>>0;}};S.prototype.unreadByteStuffedByte=function(){return this.$val.unreadByteStuffedByte();};S.ptr.prototype.readByte=function(){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:a=0;b=$ifaceNil;c=this;case 1:if(!(c.bytes.i===c.bytes.j)){$s=2;continue;}d=c.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(b,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=0;f=b;a=e;b=f;return[a,b];case 5:$s=1;continue;case 2:a=(g=c.bytes.buf,h=c.bytes.i,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=0;i=a;j=$ifaceNil;a=i;b=j;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByte};}$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;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.readByteStuffedByte=function(){var $ptr,a,aa,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;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=0;b=$ifaceNil;c=this;if((c.bytes.i+2>>0)<=c.bytes.j){a=(d=c.bytes.buf,e=c.bytes.i,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=1;if(!((a===255))){f=a;g=b;a=f;b=g;return[a,b];}if(!(((h=c.bytes.buf,i=c.bytes.i,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]))===0))){j=0;k=new L(T);a=j;b=k;return[a,b];}c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=2;l=255;m=$ifaceNil;a=l;b=m;return[a,b];}c.bytes.nUnreadable=0;o=c.readByte();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;a=n[0];b=n[1];if(!($interfaceIsEqual(b,$ifaceNil))){p=0;q=b;a=p;b=q;return[a,b];}c.bytes.nUnreadable=1;if(!((a===255))){r=a;s=$ifaceNil;a=r;b=s;return[a,b];}u=c.readByte();$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;a=t[0];b=t[1];if(!($interfaceIsEqual(b,$ifaceNil))){v=0;w=b;a=v;b=w;return[a,b];}c.bytes.nUnreadable=2;if(!((a===0))){x=0;y=new L(T);a=x;b=y;return[a,b];}z=255;aa=$ifaceNil;a=z;b=aa;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByteStuffedByte};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$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.readByteStuffedByte=function(){return this.$val.readByteStuffedByte();};S.ptr.prototype.readFull=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=$copySlice(a,$subslice(new AV(b.bytes.buf),b.bytes.i,b.bytes.j));a=$subslice(a,c);b.bytes.i=b.bytes.i+(c)>>0;if(a.$length===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readFull};}$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;};S.prototype.readFull=function(a){return this.$val.readFull(a);};S.ptr.prototype.ignore=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=b.bytes.j-b.bytes.i>>0;if(c>a){c=a;}b.bytes.i=b.bytes.i+(c)>>0;a=a-(c)>>0;if(a===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ignore};}$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;};S.prototype.ignore=function(a){return this.$val.ignore(a);};S.ptr.prototype.processSOF=function(a){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,$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;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;if(!((b.nComp===0))){return new L("multiple SOF markers");}c=a;if(c===9){b.nComp=1;}else if(c===15){b.nComp=3;}else if(c===18){b.nComp=4;}else{return new M("number of components");}d=b.readFull($subslice(new AV(b.tmp),0,a));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:if(!((b.tmp[0]===8))){return new M("precision");}b.height=((b.tmp[1]>>0)<<8>>0)+(b.tmp[2]>>0)>>0;b.width=((b.tmp[3]>>0)<<8>>0)+(b.tmp[4]>>0)>>0;if(!(((b.tmp[5]>>0)===b.nComp))){return new L("SOF has wrong length");}f=0;while(true){if(!(f=i.length)?$throwRuntimeError("index out of range"):i[f])).c=(g=b.tmp,h=6+($imul(3,f))>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));j=0;while(true){if(!(j=k.length)?$throwRuntimeError("index out of range"):k[f])).c===(l=b.comp,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j])).c){return new L("repeated component identifier");}j=j+(1)>>0;}(o=b.comp,((f<0||f>=o.length)?$throwRuntimeError("index out of range"):o[f])).tq=(m=b.tmp,n=8+($imul(3,f))>>0,((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]));if((p=b.comp,((f<0||f>=p.length)?$throwRuntimeError("index out of range"):p[f])).tq>3){return new L("bad Tq value");}s=(q=b.tmp,r=7+($imul(3,f))>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r]));t=((s>>>4<<24>>>24)>>0);u=(((s&15)>>>0)>>0);v=t;w=u;if(v<1||4=ae.length)?$throwRuntimeError("index out of range"):ae[f])).h=v;(af=b.comp,((f<0||f>=af.length)?$throwRuntimeError("index out of range"):af[f])).v=w;f=f+(1)>>0;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOF};}$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.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.processSOF=function(a){return this.$val.processSOF(a);};S.ptr.prototype.processDQT=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;case 1:if(!(a>0)){$s=2;continue;}a=a-(1)>>0;d=b.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=(e&15)>>>0;if(g>3){return new L("bad Tq value");}h=e>>>4<<24>>>24;if(h===0){$s=4;continue;}if(h===1){$s=5;continue;}$s=6;continue;case 4:if(a<64){$s=2;continue s;}a=a-(64)>>0;i=b.readFull($subslice(new AV(b.tmp),0,64));$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return j;case 10:k=(l=b.quant,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g]));m=0;while(true){if(!(m<64)){break;}n=m;(p=(q=b.quant,((g<0||g>=q.length)?$throwRuntimeError("index out of range"):q[g])),((n<0||n>=p.length)?$throwRuntimeError("index out of range"):p[n]=((o=b.tmp,((n<0||n>=o.length)?$throwRuntimeError("index out of range"):o[n]))>>0)));m++;}$s=7;continue;case 5:if(a<128){$s=2;continue s;}a=a-(128)>>0;r=b.readFull($subslice(new AV(b.tmp),0,128));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return s;case 13:t=(u=b.quant,((g<0||g>=u.length)?$throwRuntimeError("index out of range"):u[g]));v=0;while(true){if(!(v<64)){break;}w=v;(ab=(ac=b.quant,((g<0||g>=ac.length)?$throwRuntimeError("index out of range"):ac[g])),((w<0||w>=ab.length)?$throwRuntimeError("index out of range"):ab[w]=((((x=b.tmp,y=$imul(2,w),((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))>>0)<<8>>0)|((z=b.tmp,aa=($imul(2,w))+1>>0,((aa<0||aa>=z.length)?$throwRuntimeError("index out of range"):z[aa]))>>0))));v++;}$s=7;continue;case 6:return new L("bad Pq value");case 7:$s=1;continue;case 2:if(!((a===0))){return new L("DQT has wrong length");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDQT};}$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;};S.prototype.processDQT=function(a){return this.$val.processDQT(a);};S.ptr.prototype.processDRI=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;if(!((a===2))){return new L("DRI has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,2));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:b.ri=((b.tmp[0]>>0)<<8>>0)+(b.tmp[1]>>0)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDRI};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.processDRI=function(a){return this.$val.processDRI(a);};S.ptr.prototype.processApp0Marker=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;if(a<5){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,5));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(5)>>0;b.jfif=(b.tmp[0]===74)&&(b.tmp[1]===70)&&(b.tmp[2]===73)&&(b.tmp[3]===70)&&(b.tmp[4]===0);if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp0Marker};}$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;};S.prototype.processApp0Marker=function(a){return this.$val.processApp0Marker(a);};S.ptr.prototype.processApp14Marker=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;if(a<12){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,12));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(12)>>0;if((b.tmp[0]===65)&&(b.tmp[1]===100)&&(b.tmp[2]===111)&&(b.tmp[3]===98)&&(b.tmp[4]===101)){b.adobeTransformValid=true;b.adobeTransform=b.tmp[11];}if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp14Marker};}$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;};S.prototype.processApp14Marker=function(a){return this.$val.processApp14Marker(a);};S.ptr.prototype.decode=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,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;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;c.r=a;d=c.readFull($subslice(new AV(c.tmp),0,2));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,e];case 3:if(!((c.tmp[0]===255))||!((c.tmp[1]===216))){return[$ifaceNil,new L("missing SOI marker")];}case 4:f=c.readFull($subslice(new AV(c.tmp),0,2));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}case 7:if(!(!((c.tmp[0]===255)))){$s=8;continue;}c.tmp[0]=c.tmp[1];i=c.readByte();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.tmp[1]=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=7;continue;case 8:j=c.tmp[1];if(j===0){$s=10;continue;}$s=11;continue;case 10:$s=4;continue;case 11:case 12:if(!(j===255)){$s=13;continue;}l=c.readByte();$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];g=k[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=12;continue;case 13:if(j===217){$s=5;continue;}if(208<=j&&j<=215){$s=15;continue;}$s=16;continue;case 15:$s=4;continue;case 16:m=c.readFull($subslice(new AV(c.tmp),0,2));$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;if(!($interfaceIsEqual(g,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:return[$ifaceNil,g];case 19:n=(((c.tmp[0]>>0)<<8>>0)+(c.tmp[1]>>0)>>0)-2>>0;if(n<0){return[$ifaceNil,new L("short segment length")];}o=j;if(o===192||o===193||o===194){$s=20;continue;}if(o===196){$s=21;continue;}if(o===219){$s=22;continue;}if(o===218){$s=23;continue;}if(o===221){$s=24;continue;}if(o===224){$s=25;continue;}if(o===238){$s=26;continue;}$s=27;continue;case 20:c.progressive=j===194;p=c.processSOF(n);$s=29;case 29:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}g=p;if(b&&c.jfif){return[$ifaceNil,g];}$s=28;continue;case 21:if(b){$s=30;continue;}$s=31;continue;case 30:q=c.ignore(n);$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}g=q;$s=32;continue;case 31:r=c.processDHT(n);$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 32:$s=28;continue;case 22:if(b){$s=35;continue;}$s=36;continue;case 35:s=c.ignore(n);$s=38;case 38:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}g=s;$s=37;continue;case 36:t=c.processDQT(n);$s=39;case 39:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}g=t;case 37:$s=28;continue;case 23:if(b){return[$ifaceNil,$ifaceNil];}u=c.processSOS(n);$s=40;case 40:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}g=u;$s=28;continue;case 24:if(b){$s=41;continue;}$s=42;continue;case 41:v=c.ignore(n);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}g=v;$s=43;continue;case 42:w=c.processDRI(n);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}g=w;case 43:$s=28;continue;case 25:x=c.processApp0Marker(n);$s=46;case 46:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}g=x;$s=28;continue;case 26:y=c.processApp14Marker(n);$s=47;case 47:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}g=y;$s=28;continue;case 27:if(224<=j&&j<=239||(j===254)){$s=48;continue;}if(j<192){$s=49;continue;}$s=50;continue;case 48:z=c.ignore(n);$s=52;case 52:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}g=z;$s=51;continue;case 49:g=new L("unknown marker");$s=51;continue;case 50:g=new M("unknown marker");case 51:case 28:if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=4;continue;case 5:if(!(c.img1===AX.nil)){return[c.img1,$ifaceNil];}if(!(c.img3===AY.nil)){if(!(c.blackPix===AV.nil)){return c.applyBlack();}else if(c.isRGB()){return c.convertToRGB();}return[c.img3,$ifaceNil];}return[$ifaceNil,new L("missing SOS marker")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decode};}$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.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.decode=function(a,b){return this.$val.decode(a,b);};S.ptr.prototype.applyBlack=function(){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;a=this;if(!a.adobeTransformValid){return[$ifaceNil,new M("unknown color model: 4-component JPEG doesn't have Adobe APP14 metadata")];}if(!((a.adobeTransform===0))){b=$clone(a.img3.Bounds(),B.Rectangle);c=B.NewRGBA(b);D.DrawYCbCr(c,b,a.img3,b.Min);d=0;e=b.Min.Y;f=d;g=e;while(true){if(!(g>0;i=b.Min.X;j=h;k=i;while(true){if(!(k=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+j]=(255-(l=a.blackPix,m=($imul(((g-b.Min.Y>>0)),a.blackStride))+((k-b.Min.X>>0))>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))<<24>>>24)));o=j+4>>0;p=k+1>>0;j=o;k=p;}q=f+c.Stride>>0;r=g+1>>0;f=q;g=r;}return[new B.CMYK.ptr(c.Pix,c.Stride,$clone(c.Rect,B.Rectangle)),$ifaceNil];}s=$clone(a.img3.Bounds(),B.Rectangle);t=B.NewCMYK(s);u=$toNativeArray($kindStruct,[new AZ.ptr(a.img3.Y,a.img3.YStride),new AZ.ptr(a.img3.Cb,a.img3.CStride),new AZ.ptr(a.img3.Cr,a.img3.CStride),new AZ.ptr(a.blackPix,a.blackStride)]);v=u;w=0;while(true){if(!(w<4)){break;}x=w;y=$clone(((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]),AZ);ab=!(((z=a.comp,((x<0||x>=z.length)?$throwRuntimeError("index out of range"):z[x])).h===a.comp[0].h))||!(((aa=a.comp,((x<0||x>=aa.length)?$throwRuntimeError("index out of range"):aa[x])).v===a.comp[0].v));ac=0;ad=s.Min.Y;ae=ac;af=ad;while(true){if(!(af>0;if(ab){ag=(ah=ag/(2),(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero"));}ai=ae+x>>0;aj=s.Min.X;ak=ai;al=aj;while(true){if(!(al>0;if(ab){am=(an=am/(2),(an===an&&an!==1/0&&an!==-1/0)?an>>0:$throwRuntimeError("integer divide by zero"));}(aq=t.Pix,((ak<0||ak>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ak]=(255-(ao=y.src,ap=($imul(ag,y.stride))+am>>0,((ap<0||ap>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ap]))<<24>>>24)));ar=ak+4>>0;as=al+1>>0;ak=ar;al=as;}at=ae+t.Stride>>0;au=af+1>>0;ae=at;af=au;}w++;}return[t,$ifaceNil];};S.prototype.applyBlack=function(){return this.$val.applyBlack();};S.ptr.prototype.isRGB=function(){var $ptr,a;a=this;if(a.jfif){return false;}if(a.adobeTransformValid&&(a.adobeTransform===0)){return true;}return(a.comp[0].c===82)&&(a.comp[1].c===71)&&(a.comp[2].c===66);};S.prototype.isRGB=function(){return this.$val.isRGB();};S.ptr.prototype.convertToRGB=function(){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;a=this;c=(b=a.comp[0].h/a.comp[1].h,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));d=$clone(a.img3.Bounds(),B.Rectangle);e=B.NewRGBA(d);f=d.Min.Y;while(true){if(!(f>0;l=j;m=k;while(true){if(!(l>0)+0>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(n=a.img3.Y,o=h+l>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))));(u=e.Pix,v=(g+($imul(4,l))>>0)+1>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]=(r=a.img3.Cb,s=i+(t=l/c,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]))));(z=e.Pix,aa=(g+($imul(4,l))>>0)+2>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(w=a.img3.Cr,x=i+(y=l/c,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))));(ab=e.Pix,ac=(g+($imul(4,l))>>0)+3>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]=255));l=l+(1)>>0;}f=f+(1)>>0;}return[e,$ifaceNil];};S.prototype.convertToRGB=function(){return this.$val.convertToRGB();};U=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=U;V=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());d=b.decode(a,true);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new B.Config.ptr($ifaceNil,0,0),e];case 3:f=b.nComp;if(f===1){return[new B.Config.ptr(C.GrayModel,b.width,b.height),$ifaceNil];}else if(f===3){g=C.YCbCrModel;if(b.isRGB()){g=C.RGBAModel;}return[new B.Config.ptr(g,b.width,b.height),$ifaceNil];}else if(f===4){return[new B.Config.ptr(C.CMYKModel,b.width,b.height),$ifaceNil];}return[new B.Config.ptr($ifaceNil,0,0),new L("missing SOF marker")];}return;}if($f===undefined){$f={$blk:V};}$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.DecodeConfig=V;W=function(){var $ptr;B.RegisterFormat("jpeg","\xFF\xD8",U,V);};S.ptr.prototype.makeImg=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;if(c.nComp===1){d=B.NewGray(B.Rect(0,0,$imul(8,a),$imul(8,b)));c.img1=$assertType(d.SubImage(B.Rect(0,0,c.width,c.height)),AX);return;}e=c.comp[0].h;f=c.comp[0].v;h=(g=e/c.comp[1].h,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));j=(i=f/c.comp[1].v,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));k=0;l=(h<<4>>0)|j;if(l===17){k=0;}else if(l===18){k=3;}else if(l===33){k=1;}else if(l===34){k=2;}else if(l===65){k=4;}else if(l===66){k=5;}else{$panic(new $String("unreachable"));}m=B.NewYCbCr(B.Rect(0,0,$imul(($imul(8,e)),a),$imul(($imul(8,f)),b)),k);c.img3=$assertType(m.SubImage(B.Rect(0,0,c.width,c.height)),AY);if(c.nComp===4){n=c.comp[3].h;o=c.comp[3].v;p=n;q=o;c.blackPix=$makeSlice(AV,($imul(($imul(($imul(($imul(($imul(8,p)),a)),8)),q)),b)));c.blackStride=$imul(($imul(8,p)),a);}};S.prototype.makeImg=function(a,b){return this.$val.makeImg(a,b);};S.ptr.prototype.processSOS=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,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,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;em=$f.em;en=$f.en;eo=$f.eo;ep=$f.ep;eq=$f.eq;er=$f.er;es=$f.es;et=$f.et;eu=$f.eu;ev=$f.ev;ew=$f.ew;ex=$f.ex;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=[b];c=this;if(c.nComp===0){return new L("missing SOF marker");}if(a<6||(4+($imul(2,c.nComp))>>0)>0);if(!((a===(4+($imul(2,g))>>0)))){return new L("SOS length inconsistent with number of components");}h=BN.zero();i=0;j=0;while(true){if(!(j>0,((l<0||l>=k.length)?$throwRuntimeError("index out of range"):k[l]));n=-1;o=$subslice(new BO(c.comp),0,c.nComp);p=0;while(true){if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]),O);if(m===r.c){n=q;}p++;}if(n<0){return new L("unknown component selector");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex=(n<<24>>>24);s=0;while(true){if(!(s=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex===((s<0||s>=h.length)?$throwRuntimeError("index out of range"):h[s]).compIndex){return new L("repeated component selector");}s=s+(1)>>0;}i=i+(($imul((t=c.comp,((n<0||n>=t.length)?$throwRuntimeError("index out of range"):t[n])).h,(u=c.comp,((n<0||n>=u.length)?$throwRuntimeError("index out of range"):u[n])).v)))>>0;((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td=(v=c.tmp,w=2+($imul(2,j))>>0,((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]))>>>4<<24>>>24;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td>3){return new L("bad Td value");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta=((x=c.tmp,y=2+($imul(2,j))>>0,((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))&15)>>>0;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta>3){return new L("bad Ta value");}j=j+(1)>>0;}if(c.nComp>1&&i>10){return new L("total sampling factors too large");}z=0;aa=63;ab=0;ac=0;ad=z;ae=aa;af=ab;ag=ac;if(c.progressive){ad=((ah=c.tmp,ai=1+($imul(2,g))>>0,((ai<0||ai>=ah.length)?$throwRuntimeError("index out of range"):ah[ai]))>>0);ae=((aj=c.tmp,ak=2+($imul(2,g))>>0,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak]))>>0);af=(((al=c.tmp,am=3+($imul(2,g))>>0,((am<0||am>=al.length)?$throwRuntimeError("index out of range"):al[am]))>>>4<<24>>>24)>>>0);ag=((((an=c.tmp,ao=3+($imul(2,g))>>0,((ao<0||ao>=an.length)?$throwRuntimeError("index out of range"):an[ao]))&15)>>>0)>>>0);if(((ad===0)&&!((ae===0)))||ad>ae||64<=ae){return new L("bad spectral selection bounds");}if(!((ad===0))&&!((g===1))){return new L("progressive AC coefficients for more than one component");}if(!((af===0))&&!((af===(ag+1>>>0)))){return new L("bad successive approximation values");}}ap=c.comp[0].h;aq=c.comp[0].v;ar=ap;as=aq;au=(at=(((c.width+($imul(8,ar))>>0)-1>>0))/(($imul(8,ar))),(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero"));aw=(av=(((c.height+($imul(8,as))>>0)-1>>0))/(($imul(8,as))),(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(c.img1===AX.nil&&c.img3===AY.nil){c.makeImg(au,aw);}if(c.progressive){ax=0;while(true){if(!(ax=h.length)?$throwRuntimeError("index out of range"):h[ax]).compIndex;if((az=c.progCoeffs,((ay<0||ay>=az.length)?$throwRuntimeError("index out of range"):az[ay]))===BD.nil){(bc=c.progCoeffs,((ay<0||ay>=bc.length)?$throwRuntimeError("index out of range"):bc[ay]=$makeSlice(BD,($imul(($imul(($imul(au,aw)),(ba=c.comp,((ay<0||ay>=ba.length)?$throwRuntimeError("index out of range"):ba[ay])).h)),(bb=c.comp,((ay<0||ay>=bb.length)?$throwRuntimeError("index out of range"):bb[ay])).v)))));}ax=ax+(1)>>0;}}R.copy(c.bits,new R.ptr(0,0,0));bd=0;be=208;bf=bd;bg=be;b[0]=BJ.zero();bh=BP.zero();bi=0;bj=0;bk=bi;bl=bj;bm=0;bn=0;case 4:if(!(bn=h.length)?$throwRuntimeError("index out of range"):h[bp]).compIndex;bs=(br=c.comp,((bq<0||bq>=br.length)?$throwRuntimeError("index out of range"):br[bq])).h;bu=(bt=c.comp,((bq<0||bq>=bt.length)?$throwRuntimeError("index out of range"):bt[bq])).v;by=(bv=c.quant,bw=(bx=c.comp,((bq<0||bq>=bx.length)?$throwRuntimeError("index out of range"):bx[bq])).tq,((bw<0||bw>=bv.length)?$throwRuntimeError("index out of range"):bv[bw]));bz=0;case 10:if(!(bz<($imul(bs,bu)))){$s=11;continue;}if(!((g===1))){$s=12;continue;}$s=13;continue;case 12:bk=($imul(bs,bo))+(ca=bz%bs,ca===ca?ca:$throwRuntimeError("integer divide by zero"))>>0;bl=($imul(bu,bn))+(cb=bz/bs,(cb===cb&&cb!==1/0&&cb!==-1/0)?cb>>0:$throwRuntimeError("integer divide by zero"))>>0;$s=14;continue;case 13:cc=$imul(au,bs);bk=(cd=bm%cc,cd===cd?cd:$throwRuntimeError("integer divide by zero"));bl=(ce=bm/cc,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"));bm=bm+(1)>>0;if(($imul(bk,8))>=c.width||($imul(bl,8))>=c.height){bz=bz+(1)>>0;$s=10;continue;}case 14:if(c.progressive){J.copy(b[0],(cf=(cg=c.progCoeffs,((bq<0||bq>=cg.length)?$throwRuntimeError("index out of range"):cg[bq])),ch=($imul(($imul(bl,au)),bs))+bk>>0,((ch<0||ch>=cf.$length)?$throwRuntimeError("index out of range"):cf.$array[cf.$offset+ch])));}else{J.copy(b[0],BJ.zero());}if(!((af===0))){$s=15;continue;}$s=16;continue;case 15:cl=c.refine(b[0],(ci=c.huff[1],cj=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cj<0||cj>=ci.length)?$throwRuntimeError("index out of range"):ci[cj])),ad,ae,(ck=ag,ck<32?(1<>0);$s=18;case 18:if($c){$c=false;cl=cl.$blk();}if(cl&&cl.$blk!==undefined){break s;}cm=cl;if(!($interfaceIsEqual(cm,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:return cm;case 20:$s=17;continue;case 16:cn=ad;if(cn===0){$s=21;continue;}$s=22;continue;case 21:cn=cn+(1)>>0;cr=c.decodeHuffman((cp=c.huff[0],cq=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).td,((cq<0||cq>=cp.length)?$throwRuntimeError("index out of range"):cp[cq])));$s=23;case 23:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}co=cr;cs=co[0];ct=co[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}if(cs>16){return new M("excessive DC component");}cv=c.receiveExtend(cs);$s=24;case 24:if($c){$c=false;cv=cv.$blk();}if(cv&&cv.$blk!==undefined){break s;}cu=cv;cw=cu[0];ct=cu[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq]=(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])+(cw)>>0));b[0][0]=((cx=ag,cx<32?(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])<>0);case 22:if(cn<=ae&&c.eobRun>0){$s=25;continue;}$s=26;continue;case 25:c.eobRun=c.eobRun-(1)<<16>>>16;$s=27;continue;case 26:da=(cy=c.huff[1],cz=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cz<0||cz>=cy.length)?$throwRuntimeError("index out of range"):cy[cz]));case 28:if(!(cn<=ae)){$s=29;continue;}dc=c.decodeHuffman(da);$s=30;case 30:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}db=dc;dd=db[0];de=db[1];if(!($interfaceIsEqual(de,$ifaceNil))){return de;}df=dd>>>4<<24>>>24;dg=(dd&15)>>>0;if(!((dg===0))){$s=31;continue;}$s=32;continue;case 31:cn=cn+((df>>0))>>0;if(cn>ae){$s=29;continue;}di=c.receiveExtend(dg);$s=34;case 34:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}dh=di;dj=dh[0];dk=dh[1];if(!($interfaceIsEqual(dk,$ifaceNil))){return dk;}(dm=((cn<0||cn>=P.length)?$throwRuntimeError("index out of range"):P[cn]),((dm<0||dm>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dm]=((dl=ag,dl<32?(dj<>0)));$s=33;continue;case 32:if(!((df===15))){$s=35;continue;}$s=36;continue;case 35:c.eobRun=((dn=df,dn<32?(1<>>16);if(!((df===0))){$s=37;continue;}$s=38;continue;case 37:dq=c.decodeBits((df>>0));$s=39;case 39:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}dp=dq;dr=dp[0];ds=dp[1];if(!($interfaceIsEqual(ds,$ifaceNil))){return ds;}c.eobRun=(c.eobRun|((dr<<16>>>16)))>>>0;case 38:c.eobRun=c.eobRun-(1)<<16>>>16;$s=29;continue;case 36:cn=cn+(15)>>0;case 33:cn=cn+(1)>>0;$s=28;continue;case 29:case 27:case 17:if(c.progressive){if(!((ae===63))||!((ag===0))){J.copy((dt=(du=c.progCoeffs,((bq<0||bq>=du.length)?$throwRuntimeError("index out of range"):du[bq])),dv=($imul(($imul(bl,au)),bs))+bk>>0,((dv<0||dv>=dt.$length)?$throwRuntimeError("index out of range"):dt.$array[dt.$offset+dv])),b[0]);bz=bz+(1)>>0;$s=10;continue;}}dw=0;while(true){if(!(dw<64)){break;}(dy=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dy<0||dy>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dy]=($imul((dx=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dx<0||dx>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dx])),((by.nilCheck,((dw<0||dw>=by.length)?$throwRuntimeError("index out of range"):by[dw])))))));dw=dw+(1)>>0;}K(b[0]);dz=AV.nil;ea=0;eb=dz;ec=ea;if(c.nComp===1){ed=$subslice(c.img1.Pix,($imul(8,((($imul(bl,c.img1.Stride))+bk>>0)))));ee=c.img1.Stride;eb=ed;ec=ee;}else{ef=bq;if(ef===0){eg=$subslice(c.img3.Y,($imul(8,((($imul(bl,c.img3.YStride))+bk>>0)))));eh=c.img3.YStride;eb=eg;ec=eh;}else if(ef===1){ei=$subslice(c.img3.Cb,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));ej=c.img3.CStride;eb=ei;ec=ej;}else if(ef===2){ek=$subslice(c.img3.Cr,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));el=c.img3.CStride;eb=ek;ec=el;}else if(ef===3){em=$subslice(c.blackPix,($imul(8,((($imul(bl,c.blackStride))+bk>>0)))));en=c.blackStride;eb=em;ec=en;}else{return new M("too many components");}}eo=0;while(true){if(!(eo<8)){break;}ep=$imul(eo,8);eq=$imul(eo,ec);er=0;while(true){if(!(er<8)){break;}et=(es=ep+er>>0,((es<0||es>=b[0].length)?$throwRuntimeError("index out of range"):b[0][es]));if(et<-128){et=0;}else if(et>127){et=255;}else{et=et+(128)>>0;}(eu=eq+er>>0,((eu<0||eu>=eb.$length)?$throwRuntimeError("index out of range"):eb.$array[eb.$offset+eu]=(et<<24>>>24)));er=er+(1)>>0;}eo=eo+(1)>>0;}bz=bz+(1)>>0;$s=10;continue;case 11:bp=bp+(1)>>0;$s=8;continue;case 9:bf=bf+(1)>>0;if(c.ri>0&&((ev=bf%c.ri,ev===ev?ev:$throwRuntimeError("integer divide by zero"))===0)&&bf<($imul(au,aw))){$s=40;continue;}$s=41;continue;case 40:ew=c.readFull($subslice(new AV(c.tmp),0,2));$s=42;case 42:if($c){$c=false;ew=ew.$blk();}if(ew&&ew.$blk!==undefined){break s;}ex=ew;if(!($interfaceIsEqual(ex,$ifaceNil))){$s=43;continue;}$s=44;continue;case 43:return ex;case 44:if(!((c.tmp[0]===255))||!((c.tmp[1]===bg))){return new L("bad RST marker");}bg=bg+(1)<<24>>>24;if(bg===216){bg=208;}R.copy(c.bits,new R.ptr(0,0,0));BP.copy(bh,BP.zero());c.eobRun=0;case 41:bo=bo+(1)>>0;$s=6;continue;case 7:bn=bn+(1)>>0;$s=4;continue;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOS};}$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.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.d=d;$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.e=e;$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.el=el;$f.em=em;$f.en=en;$f.eo=eo;$f.ep=ep;$f.eq=eq;$f.er=er;$f.es=es;$f.et=et;$f.eu=eu;$f.ev=ev;$f.ew=ew;$f.ex=ex;$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.processSOS=function(a){return this.$val.processSOS(a);};S.ptr.prototype.refine=function(a,b,c,d,e){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,$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;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:f=this;if(c===0){$s=1;continue;}$s=2;continue;case 1:if(!((d===0))){$panic(new $String("unreachable"));}h=f.decodeBit();$s=3;case 3: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))){return j;}if(i){a.nilCheck,a[0]=((a.nilCheck,a[0])|(e));}return $ifaceNil;case 2:k=c;if(f.eobRun===0){$s=4;continue;}$s=5;continue;case 4:case 6:if(!(k<=d)){$s=7;continue;}l=0;n=f.decodeHuffman(b);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}q=o>>>4<<24>>>24;r=(o&15)>>>0;s=r;if(s===0){$s=9;continue;}if(s===1){$s=10;continue;}$s=11;continue;case 9:if(!((q===15))){$s=13;continue;}$s=14;continue;case 13:f.eobRun=((t=q,t<32?(1<>>16);if(!((q===0))){$s=15;continue;}$s=16;continue;case 15:v=f.decodeBits((q>>0));$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!($interfaceIsEqual(x,$ifaceNil))){return x;}f.eobRun=(f.eobRun|((w<<16>>>16)))>>>0;case 16:$s=7;continue s;case 14:$s=12;continue;case 10:l=e;z=f.decodeBit();$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!($interfaceIsEqual(ab,$ifaceNil))){return ab;}if(!aa){l=-l;}$s=12;continue;case 11:return new L("unexpected Huffman code");case 12:ad=f.refineNonZeroes(a,k,d,(q>>0),e);$s=19;case 19:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;k=ac[0];p=ac[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}if(k>d){return new L("too many coefficients");}if(!((l===0))){(ae=((k<0||k>=P.length)?$throwRuntimeError("index out of range"):P[k]),a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae]=l));}k=k+(1)>>0;$s=6;continue;case 7:case 5:if(f.eobRun>0){$s=20;continue;}$s=21;continue;case 20:f.eobRun=f.eobRun-(1)<<16>>>16;ag=f.refineNonZeroes(a,k,d,-1,e);$s=22;case 22:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:return ah;case 24:case 21:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refine};}$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.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.refine=function(a,b,c,d,e){return this.$val.refine(a,b,c,d,e);};S.ptr.prototype.refineNonZeroes=function(a,b,c,d,e){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:f=this;case 1:if(!(b<=c)){$s=2;continue;}g=((b<0||b>=P.length)?$throwRuntimeError("index out of range"):P[b]);if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))===0){$s=3;continue;}$s=4;continue;case 3:if(d===0){$s=2;continue;}d=d-(1)>>0;b=b+(1)>>0;$s=1;continue;case 4:i=f.decodeBit();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[0,k];}if(!j){b=b+(1)>>0;$s=1;continue;}if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))>=0){a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))+(e)>>0));}else{a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))-(e)>>0));}b=b+(1)>>0;$s=1;continue;case 2:return[b,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refineNonZeroes};}$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;};S.prototype.refineNonZeroes=function(a,b,c,d,e){return this.$val.refineNonZeroes(a,b,c,d,e);};$ptrType(AF).prototype.init=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=$clone(a,AD);b=this;c=0;d=a.value;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);if((f>>0)>c){c=(f>>0);}e++;}b.$set((g=$makeSlice(BQ,(c+1>>0)),$subslice(new AF(g.$array),g.$offset,g.$offset+g.$length)));h=0;i=0;j=h;k=i;l=0;while(true){if(!(l<16)){break;}m=((l+1>>0)>>>0)<<24>>>0;n=0;while(true){if(!(n<(o=a.count,((l<0||l>=o.length)?$throwRuntimeError("index out of range"):o[l])))){break;}(p=b.$get(),q=(r=a.value,((k<0||k>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+k])),((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((m|j)>>>0)));j=j+(1)>>>0;k=k+(1)>>0;n=n+(1)<<24>>>24;}j=(s=(1),s<32?(j<>>0;l=l+(1)>>0;}};AH=function(){var $ptr,a,b,c,d;a=AE;b=0;while(true){if(!(b<4)){break;}c=b;d=$clone(((b<0||b>=a.length)?$throwRuntimeError("index out of range"):a[b]),AD);$indexPtr(AG,c,BR).init(d);b++;}};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];M.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BY.methods=[{prop:"ensureNBits",name:"ensureNBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$error],false)},{prop:"receiveExtend",name:"receiveExtend",pkg:"image/jpeg",typ:$funcType([$Uint8],[$Int32,$error],false)},{prop:"processDHT",name:"processDHT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decodeHuffman",name:"decodeHuffman",pkg:"image/jpeg",typ:$funcType([BW],[$Uint8,$error],false)},{prop:"decodeBit",name:"decodeBit",pkg:"image/jpeg",typ:$funcType([],[$Bool,$error],false)},{prop:"decodeBits",name:"decodeBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$Uint32,$error],false)},{prop:"fill",name:"fill",pkg:"image/jpeg",typ:$funcType([],[$error],false)},{prop:"unreadByteStuffedByte",name:"unreadByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[],false)},{prop:"readByte",name:"readByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readByteStuffedByte",name:"readByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readFull",name:"readFull",pkg:"image/jpeg",typ:$funcType([AV],[$error],false)},{prop:"ignore",name:"ignore",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processSOF",name:"processSOF",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDQT",name:"processDQT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDRI",name:"processDRI",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp0Marker",name:"processApp0Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp14Marker",name:"processApp14Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decode",name:"decode",pkg:"image/jpeg",typ:$funcType([A.Reader,$Bool],[B.Image,$error],false)},{prop:"applyBlack",name:"applyBlack",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"isRGB",name:"isRGB",pkg:"image/jpeg",typ:$funcType([],[$Bool],false)},{prop:"convertToRGB",name:"convertToRGB",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"makeImg",name:"makeImg",pkg:"image/jpeg",typ:$funcType([$Int,$Int],[],false)},{prop:"processSOS",name:"processSOS",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"refine",name:"refine",pkg:"image/jpeg",typ:$funcType([BX,BW,$Int32,$Int32,$Int32],[$error],false)},{prop:"refineNonZeroes",name:"refineNonZeroes",pkg:"image/jpeg",typ:$funcType([BX,$Int32,$Int32,$Int32,$Int32],[$Int32,$error],false)}];BR.methods=[{prop:"init",name:"init",pkg:"image/jpeg",typ:$funcType([AD],[],false)}];H.init([{prop:"nCodes",name:"nCodes",pkg:"image/jpeg",typ:$Int32,tag:""},{prop:"lut",name:"lut",pkg:"image/jpeg",typ:BF,tag:""},{prop:"vals",name:"vals",pkg:"image/jpeg",typ:BG,tag:""},{prop:"minCodes",name:"minCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"maxCodes",name:"maxCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"valsIndices",name:"valsIndices",pkg:"image/jpeg",typ:AW,tag:""}]);J.init($Int32,64);O.init([{prop:"h",name:"h",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"v",name:"v",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"c",name:"c",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"tq",name:"tq",pkg:"image/jpeg",typ:$Uint8,tag:""}]);R.init([{prop:"a",name:"a",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"m",name:"m",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"n",name:"n",pkg:"image/jpeg",typ:$Int32,tag:""}]);S.init([{prop:"r",name:"r",pkg:"image/jpeg",typ:A.Reader,tag:""},{prop:"bits",name:"bits",pkg:"image/jpeg",typ:R,tag:""},{prop:"bytes",name:"bytes",pkg:"image/jpeg",typ:BB,tag:""},{prop:"width",name:"width",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"img1",name:"img1",pkg:"image/jpeg",typ:AX,tag:""},{prop:"img3",name:"img3",pkg:"image/jpeg",typ:AY,tag:""},{prop:"blackPix",name:"blackPix",pkg:"image/jpeg",typ:AV,tag:""},{prop:"blackStride",name:"blackStride",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"ri",name:"ri",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nComp",name:"nComp",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"progressive",name:"progressive",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"jfif",name:"jfif",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransformValid",name:"adobeTransformValid",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransform",name:"adobeTransform",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"eobRun",name:"eobRun",pkg:"image/jpeg",typ:$Uint16,tag:""},{prop:"comp",name:"comp",pkg:"image/jpeg",typ:BC,tag:""},{prop:"progCoeffs",name:"progCoeffs",pkg:"image/jpeg",typ:BE,tag:""},{prop:"huff",name:"huff",pkg:"image/jpeg",typ:BI,tag:""},{prop:"quant",name:"quant",pkg:"image/jpeg",typ:BK,tag:""},{prop:"tmp",name:"tmp",pkg:"image/jpeg",typ:BL,tag:""}]);AD.init([{prop:"count",name:"count",pkg:"image/jpeg",typ:AU,tag:""},{prop:"value",name:"value",pkg:"image/jpeg",typ:AV,tag:""}]);AF.init($Uint32);$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=F.$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=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AG=AS.zero();I="short Huffman data";N="luma/chroma subsampling ratio";P=$toNativeArray($kindInt,[0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);T="missing 0xff00 sequence";AE=$toNativeArray($kindStruct,[new AD.ptr($toNativeArray($kindUint8,[0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125]),new AV([1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250])),new AD.ptr($toNativeArray($kindUint8,[0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119]),new AV([0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250]))]);W();AH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/hue"]=(function(){var $pkg={},$init,A,B,C,D,E,J,K,L,M,N,O,P,F,G,H,I;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/jpeg"];D=$packages["log"];E=$packages["math"];J=$ptrType(A.Image);K=$arrayType($Float64,3);L=$arrayType(K,2);M=$arrayType($Float64,5);N=$arrayType(M,4);O=$sliceType(A.ImagePart);P=$sliceType($emptyInterface);H=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:F=F+(1)>>0;b=G.Size();c=b[0];d=b[1];e=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,L.zero()),new A.ColorM.ptr(false,N.zero()),O.nil);e.GeoM.Translate((320-c>>0)/2,(240-d>>0)/2);$r=e.ColorM.RotateHue((f=F%360,f===f?f:$throwRuntimeError("integer divide by zero"))*2*3.141592653589793/360);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.DrawImage(G,e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return h;case 4:return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$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;};I=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=$ifaceNil;c=B.NewImageFromFile("images/gophers.jpg",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;G=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new P([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:d=A.Run(H,320,240,2,"Hue (Ebiten Demo)");$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=D.Fatal(new P([e]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$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;};$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;}F=0;G=J.nil;if($pkg===$mainPkg){$s=6;continue;}$s=7;continue;case 6:$r=I();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 7:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/hue"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=hue.js.map diff --git a/_docs/public/examples/hue.js.map b/_docs/public/examples/hue.js.map deleted file mode 100644 index ba8429881..000000000 --- a/_docs/public/examples/hue.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"hue.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/image/jpeg/huffman.go","/image/jpeg/idct.go","/image/jpeg/reader.go","/image/jpeg/scan.go","/image/jpeg/writer.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/hue/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;mfCnQA,8B,8C,WA0CC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;;+QCU/B,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;i1GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;sQC1BA,+D,gDAIA,kC,gDAQA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,qE,mBC6nBC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;smFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,yBCQA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;kZ,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCzPzB,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;+0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAgBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,wJAIa,cACb,0CACA,IACA,UACC,oMACA,IACD,gBACC,oMACA,oMACD,gBACC,IACA,oMACD,gBACC,oMACA,IACD,gBACC,0MACA,gN,MAGA,IACA,I,CAED,2CACA,2CACA,2CACA,qBACA,yG,msZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eCzJoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;6hDCrEK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;8+ICpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,weAoDI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,g1BCgBA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;qgB,4F,4F,4F,4F,4F,4F,4F,4F,4F;4Q;+5CCxvBK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;2vBCpcA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,qY,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G;yxIChBK,OACL,OACC,uH,sC,+BAGE,gB,CAED,S,CAED,yCACA,yB,iBAEC,a,MAEA,0C,C,gBAGA,c,C,qBAGF,iB,ygBAKK,OACL,iD,OACI,0K,OACF,Y,O,OAGF,8BACA,2CACA,yBACA,sE,gBAEC,4C,CAED,oB,69BAKK,OACL,iC,SAEE,qC,CAEE,8L,OACF,S,OAED,wB,QAEC,6B,CAED,oB,6BAEC,6B,CAED,uJAKA,WACI,YACJ,2CACC,8JACA,0F,K,iBAGA,8C,C,iBAGA,mD,CAED,+B,QAEC,qC,CAEE,qM,OACF,S,OAID,gDACC,+E,KAEG,gBACA,kCACH,+BACI,qGAMH,qDACA,wIACI,8EACH,qGADgC,mB,CAGjC,YACA,YAZiC,a,CAFF,Y,CAmB7B,sBACJ,2H,WAEE,2FACA,2FACA,8F,MAEA,2FACA,0GACA,8FACA,cACA,c,CAED,gC,M,qBAGF,iB,i+BAKK,O,iBAEJ,+C,CAGD,4C,OACI,qK,O,uEAED,Y,C,iCAMA,0B,CAED,c,O,OAGC,mJ,eACF,6BACA,8BACA,2CACA,8C,CAGF,OACK,kDACH,+C,OACI,yK,QACF,Y,Q,Q,uCAID,Q,CAED,yBACA,2C,yFAEC,mR,CAED,2BAd8C,W,qBAgB/C,oC,6kBAGK,OACL,8C,OACI,qK,OACF,gB,O,OAGF,qCACA,yBACA,2CACA,oB,8dAGK,OACL,4C,OACI,qK,OACF,Y,O,OAGF,sDACA,sDACA,yBACA,iDACA,oB,2bC3KI,kCACH,a,irBAIC,mGACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FAbiB,W,S,CAkBlB,+GACA,oGACA,6FACA,kGACA,kGACA,kGACA,kGACA,kGAGA,2BACA,0BACA,0BACA,4BACA,yBACA,0BAGA,UACA,WACA,0BACA,uBACA,yBACA,WACA,cACA,YACA,cAGA,YACA,cACA,UACA,WACA,6CACA,8CAGA,iHACA,iHACA,iHACA,kHACA,kHACA,iHACA,iHACA,iHA9DkB,W,CAkEf,oCAMH,qHACA,0GACA,oGACA,oGACA,mGACA,oGACA,oGACA,oGAGA,kCACA,oCACA,oCACA,mCACA,mCACA,oCAGA,YACA,cACA,mCACA,oCACA,oCACA,YACA,cACA,YACA,cAGA,YACA,cACA,YACA,cACA,8CACA,8CAGA,oHACA,oHACA,qHACA,qHACA,qHACA,qHACA,qHACA,qHAlDkB,a,C,0CCrHd,YAAgC,gC,qHAKhC,YAAqC,qC,gXAsHrC,O,+BAEJ,iE,C,gBAKA,mHACA,mHACA,gC,CAGD,kJACA,2B,QAEC,Y,CAED,S,0SAQK,OACL,6CACA,sB,gBAEC,2CACA,yBACA,2C,C,wYAMI,OACL,mDACI,6J,O,4B,O,qBAIJ,iGACA,2BACA,sB,oC,osBASK,O,gCAGJ,iGACA,2BACA,sB,iB,4B,C,4G,mC,CAOA,2BACA,sB,sC,CAID,sBAEA,4G,sC,4B,CAIA,sB,iB,oC,CAKA,4G,sC,4B,CAIA,sB,e,mC,C,wC,2nBASK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,mEACA,iBACA,2B,kBAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,8bAIK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,yB,QAEC,I,CAED,2BACA,W,UAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,isBAIK,O,qBAEJ,qC,CAED,IACA,UACC,UACD,iBACC,UACD,iBACC,U,MAEA,qC,CAEE,6L,OACF,S,O,sBAIA,0B,CAED,gDACA,+C,iCAEC,qC,CAGG,wCACH,iLAGI,kC,sKAEF,8C,CAFiB,W,CAMnB,kL,uFAEC,6B,CAGD,mGACA,oD,uBAEC,8C,C,qBAGA,gB,CAED,UACA,UAYC,gBAED,gBAQC,KACA,W,UAKE,gB,CAEF,iB,6KAEE,gB,CAEF,iB,+CAEE,gB,C,CAIH,gBAUC,KACA,W,6BAEE,gB,CAEF,yB,gBAEE,gB,CAEF,iB,+CAEE,gB,C,C,CAKH,qFACA,qFA3FwB,W,CA6FzB,iB,k3BAIK,OAEL,iCACC,WACA,4G,sCAEC,S,CAED,a,QAEC,6B,CAED,iFAGA,O,SAEE,gB,CAED,YACG,+L,OACF,S,QAED,wHACC,wO,K,cAEF,O,UAEE,gB,CAED,aACG,mM,QACF,S,QAED,wHACC,+W,K,qBArBD,6B,O,qB,eA0BD,qC,CAED,iB,6mBAIK,O,eAEJ,qC,CAEE,6L,OACF,S,OAED,4CACA,iB,idAGK,OACL,qC,OACC,8G,OAEE,6L,OACF,S,OAED,WAEA,0FAEA,qC,OACC,kH,OAED,iB,qfAGK,OACL,sC,OACC,8G,OAEE,8L,OACF,S,OAED,Y,2FAGC,2BACA,2B,CAGD,qC,OACC,kH,OAED,iB,kqBAIK,OACL,MAGG,6L,OACF,oB,O,6CAGA,8C,CAID,OACC,0H,sCAEC,oB,CAED,iDAqBC,kBACA,mH,sCAEC,oB,C,qBAGF,WACA,yC,QAEC,c,QAED,uCAGC,8G,sCAEC,oB,C,uB,YAID,c,CAED,kD,QAOC,c,QAKE,iM,QACF,oB,QAED,gD,QAEC,gD,CAGD,yOACA,QACC,sBACA,mG,cAEC,oB,C,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,Q,MAEE,4B,CAED,mG,eACD,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,0G,eACD,QACC,2G,uBAEA,uF,QACC,+F,e,QAEA,0B,uBAEA,0B,Q,Q,sCAID,oB,C,qB,uBAID,yB,C,uB,2BAIC,sB,oBAEA,wB,CAED,yB,CAED,8C,igBAUK,O,2BAEJ,mG,C,8BAYA,sCACA,eACA,8BACI,0DACC,+DACH,gRADoD,2BADH,kCAKnD,4E,CAYD,sCACA,eAEA,mLASA,0HACC,6MACI,iEACH,iB,OAEC,iG,CAEG,uEACH,iB,OAEC,iG,CAED,yPALoD,mCALH,0C,KAcpD,oB,gHAGK,O,WAEJ,a,C,kDAKA,Y,CAED,iE,wKAGK,OACL,2GACA,sCACA,eACI,8CACH,yBACA,4BACA,4BACI,+DACH,qOACA,yTACA,6TACA,sIAJsD,W,CAJf,W,CAWzC,oB,iRAKI,2KACJ,oH,oWAMI,2KACD,4K,OACF,0C,OAED,UACA,UACC,iEAKD,gBACC,e,cAEC,c,CAED,uDAKD,gBACC,iE,CAMD,oE,+KAIA,wC,mFCrxBK,O,gBAEJ,+CACA,gEACA,O,CAGD,cACA,cACA,iGACA,iGACI,IACJ,cACA,WACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,I,MAEA,mC,CAED,wEACA,gE,gBAGC,oCACA,mFACA,oC,C,++DAKI,O,gBAEJ,mC,C,4GAGA,qC,CAEE,6L,OACF,S,OAED,gB,iCAEC,kE,CAEG,YAKJ,IACI,kCACH,mGACA,KACA,qL,YAEE,I,C,K,QAID,2C,CAED,0FAMI,kC,gKAEF,4C,CAFiB,W,CAKnB,kLAEA,oL,4EAEC,6B,CAED,gL,4EAEC,6B,CA9BqB,W,C,oBAoCtB,iD,CAmBD,2C,kBAEC,gHACA,gHACA,gIACA,4H,2CAEC,8C,C,4BAGA,wE,C,sCAGA,oD,C,CAKF,0CACA,8IACA,+I,qCAEC,iB,C,kBAGI,oCACH,mF,uGAEC,sT,CAHqB,a,C,CAQxB,gCACA,wBAGC,eACA,aAGA,sBACA,KAEG,wCACC,wCACC,uCACH,mFACA,yFACA,yFACA,kLACI,sDA0BH,8C,QACC,wFACA,kH,uBAEA,gBACA,sEACA,gGACA,a,oDAjCqB,a,e,C,Q,kBAyCrB,2O,MAEA,uB,CAGD,+C,QACI,mX,QACF,U,Q,uBAGD,MACA,0C,QACC,aAEA,gS,uCAEC,U,C,UAGA,uC,CAED,gI,uCAEC,U,CAED,0JACA,2G,QAGD,sD,QACC,+B,uBAGA,sKACA,sCACC,gI,uCAEC,U,CAED,mBACA,eACA,+C,QACC,mB,UAEC,e,CAED,gI,uCAEC,U,CAED,qL,uBAEA,gD,QACC,4CACA,+C,QACC,kI,uCAEC,U,CAED,wC,QAED,+BACA,e,QAED,c,QA9BmB,a,uB,Q,Q,kB,8BAuCrB,2OAlHoB,a,e,C,CA6HlB,qCACH,+YAD8B,a,CAG/B,QACA,2B,gBAEC,qG,MAEA,MACA,WACC,qGACD,iBACC,sGACD,iBACC,sGACD,iBACC,qG,MAEA,oC,C,CAIE,oCACH,eACA,gBACI,oCACH,6F,YAEC,K,iBAEA,O,MAEA,e,CAED,uHATkB,a,CAHD,a,CAnJG,a,uBALD,a,qBAyKvB,aACA,yI,QAGI,yM,QACF,U,Q,4CAGA,+B,CAED,mB,aAEC,O,CAGD,gCAEA,sBAEA,W,QA7LqB,a,qBADD,a,qBAmMvB,iB,m/DAKK,OAEL,uC,O,eAEE,mC,CAED,6G,sCAEC,S,C,MAGA,wC,CAED,iB,OAID,IACA,8C,OAEC,kCACC,IACA,kH,sCAEC,S,CAED,iBACA,aAEA,sEACA,OACC,+C,QACC,wCACA,8C,QACC,sH,sCAEC,S,CAED,uC,QAED,gB,Q,eAEF,QACC,IACA,iH,uCAEC,U,C,QAGA,K,C,uBAGD,wC,QAGD,4I,sCAEC,S,C,QAGA,sC,C,eAGA,2J,CA3CmB,W,qB,OA+CtB,8C,QACC,+BACG,uM,QACF,U,Q,QAGF,iB,0uBAKK,OACL,kCACC,qEACA,qH,O,UAEE,c,CAED,WANmB,W,c,OASpB,6G,sCAEC,Y,C,OAXmB,W,c,C,uFAiBnB,uK,MAEA,uK,CAnBmB,W,qBAsBrB,oB,oXClSyB,eAApB,OACL,IACA,2I,aAEE,S,C,KAGF,8FACA,gBACI,mCACH,yBACI,+GACH,iNACA,YACA,WAHkC,iB,CAKnC,4BAP6B,W,C,iCAe9B,2HACC,2B,K,8iK,4F,4F,4F,4F,4F,yG,uB,kC,mN,4B,iiD,I;srBCjJD,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;orBCzQA,WACA,yBACA,8GACA,4CACA,6LACG,qK,OACF,S,OAED,iB,sWAII,YACJ,0IACA,mE,OACC,sG,OAEE,2L,OACF,sG,O,oT,4F,4F,4F,4F,wG,iD,O,sF,mB"} diff --git a/_docs/public/examples/keyboard.js b/_docs/public/examples/keyboard.js deleted file mode 100644 index 8430f4983..000000000 --- a/_docs/public/examples/keyboard.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AO,AQ;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,E,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);E=function(a){var $ptr,a,b;return(b=L.keyPressed,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a]));};$pkg.IsKeyPressed=E;M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,AY,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AH,AM,AN,AQ,AR,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});AY=$pkg.Key=$newType(4,$kindInt,"ebiten.Key","Key","github.com/hajimehoshi/ebiten",null);BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AR=function(a){var $ptr,a;return B.IsKeyPressed((a>>0));};$pkg.IsKeyPressed=AR;BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/keyboard/keyboard"]=(function(){var $pkg={},$init,A,B,C,D;A=$packages["image"];C=function(){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,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;a=",";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(a)]={k:a,v:$clone(A.Rect(168,54,184,72),A.Rectangle)};b=".";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(b)]={k:b,v:$clone(A.Rect(184,54,200,72),A.Rectangle)};c="0";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(c)]={k:c,v:$clone(A.Rect(176,0,192,18),A.Rectangle)};d="1";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(d)]={k:d,v:$clone(A.Rect(32,0,48,18),A.Rectangle)};e="2";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(e)]={k:e,v:$clone(A.Rect(48,0,64,18),A.Rectangle)};f="3";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(f)]={k:f,v:$clone(A.Rect(64,0,80,18),A.Rectangle)};g="4";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(g)]={k:g,v:$clone(A.Rect(80,0,96,18),A.Rectangle)};h="5";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(h)]={k:h,v:$clone(A.Rect(96,0,112,18),A.Rectangle)};i="6";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(i)]={k:i,v:$clone(A.Rect(112,0,128,18),A.Rectangle)};j="7";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(j)]={k:j,v:$clone(A.Rect(128,0,144,18),A.Rectangle)};k="8";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(k)]={k:k,v:$clone(A.Rect(144,0,160,18),A.Rectangle)};l="9";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(l)]={k:l,v:$clone(A.Rect(160,0,176,18),A.Rectangle)};m="A";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(m)]={k:m,v:$clone(A.Rect(48,36,64,54),A.Rectangle)};n="Alt";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(n)]={k:n,v:$clone(A.Rect(64,72,96,90),A.Rectangle)};o="B";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(A.Rect(120,54,136,72),A.Rectangle)};p="BS";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(p)]={k:p,v:$clone(A.Rect(232,18,272,36),A.Rectangle)};q="C";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(q)]={k:q,v:$clone(A.Rect(88,54,104,72),A.Rectangle)};r="Ctrl";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(r)]={k:r,v:$clone(A.Rect(0,36,48,54),A.Rectangle)};s="D";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(s)]={k:s,v:$clone(A.Rect(80,36,96,54),A.Rectangle)};t="Del";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(t)]={k:t,v:$clone(A.Rect(240,0,272,18),A.Rectangle)};u="Down";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:$clone(A.Rect(48,126,96,144),A.Rectangle)};v="E";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(v)]={k:v,v:$clone(A.Rect(72,18,88,36),A.Rectangle)};w="Enter";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(w)]={k:w,v:$clone(A.Rect(224,36,272,54),A.Rectangle)};x="Esc";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(x)]={k:x,v:$clone(A.Rect(0,0,32,18),A.Rectangle)};y="F";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(y)]={k:y,v:$clone(A.Rect(96,36,112,54),A.Rectangle)};z="G";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(z)]={k:z,v:$clone(A.Rect(112,36,128,54),A.Rectangle)};aa="H";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(aa)]={k:aa,v:$clone(A.Rect(128,36,144,54),A.Rectangle)};ab="I";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ab)]={k:ab,v:$clone(A.Rect(152,18,168,36),A.Rectangle)};ac="J";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ac)]={k:ac,v:$clone(A.Rect(144,36,160,54),A.Rectangle)};ad="K";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ad)]={k:ad,v:$clone(A.Rect(160,36,176,54),A.Rectangle)};ae="L";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ae)]={k:ae,v:$clone(A.Rect(176,36,192,54),A.Rectangle)};af="Left";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(af)]={k:af,v:$clone(A.Rect(0,126,48,144),A.Rectangle)};ag="M";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ag)]={k:ag,v:$clone(A.Rect(152,54,168,72),A.Rectangle)};ah="N";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ah)]={k:ah,v:$clone(A.Rect(136,54,152,72),A.Rectangle)};ai="O";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ai)]={k:ai,v:$clone(A.Rect(168,18,184,36),A.Rectangle)};aj="P";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(aj)]={k:aj,v:$clone(A.Rect(184,18,200,36),A.Rectangle)};ak="Q";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ak)]={k:ak,v:$clone(A.Rect(40,18,56,36),A.Rectangle)};al="R";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(al)]={k:al,v:$clone(A.Rect(88,18,104,36),A.Rectangle)};am="Right";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(am)]={k:am,v:$clone(A.Rect(96,126,144,144),A.Rectangle)};an="S";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(an)]={k:an,v:$clone(A.Rect(64,36,80,54),A.Rectangle)};ao="Shift";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:$clone(A.Rect(0,54,56,72),A.Rectangle)};ap="Space";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ap)]={k:ap,v:$clone(A.Rect(96,72,176,90),A.Rectangle)};aq="T";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(aq)]={k:aq,v:$clone(A.Rect(104,18,120,36),A.Rectangle)};ar="Tab";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ar)]={k:ar,v:$clone(A.Rect(0,18,40,36),A.Rectangle)};as="U";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(as)]={k:as,v:$clone(A.Rect(136,18,152,36),A.Rectangle)};at="Up";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(at)]={k:at,v:$clone(A.Rect(48,108,96,126),A.Rectangle)};au="V";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(au)]={k:au,v:$clone(A.Rect(104,54,120,72),A.Rectangle)};av="W";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(av)]={k:av,v:$clone(A.Rect(56,18,72,36),A.Rectangle)};aw="X";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(aw)]={k:aw,v:$clone(A.Rect(72,54,88,72),A.Rectangle)};ax="Y";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ax)]={k:ax,v:$clone(A.Rect(120,18,136,36),A.Rectangle)};ay="Z";(B||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ay)]={k:ay,v:$clone(A.Rect(56,54,72,72),A.Rectangle)};};D=function(a){var $ptr,a,b,c,d,e;b=(c=B[$String.keyFor(a)],c!==undefined?[c.v,true]:[new A.Rectangle.ptr(new A.Point.ptr(0,0),new A.Point.ptr(0,0)),false]);d=$clone(b[0],A.Rectangle);e=b[1];return[d,e];};$pkg.KeyRect=D;$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;}B=$makeMap($String.keyFor,[]);C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/keyboard"]=(function(){var $pkg={},$init,A,B,C,D,E,I,L,M,N,O,P,Q,R,S,F,H,G,J,K;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["github.com/hajimehoshi/ebiten/examples/keyboard/keyboard"];D=$packages["log"];E=$packages["strconv"];I=$pkg.pressedKeysParts=$newType(12,$kindSlice,"main.pressedKeysParts","pressedKeysParts","github.com/hajimehoshi/ebiten/examples/keyboard",null);L=$ptrType(A.Image);M=$sliceType($emptyInterface);N=$arrayType($Float64,3);O=$arrayType(N,2);P=$arrayType($Float64,5);Q=$arrayType(P,4);R=$sliceType(A.ImagePart);S=$sliceType($String);G=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=$ifaceNil;c=B.NewImageFromFile("images/keyboard/keyboard.png",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;F=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new M([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};I.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(I).prototype.Len=function(){return this.$get().Len();};I.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]);h=C.KeyRect(g);i=$clone(h[0],$packages["image"].Rectangle);j=h[1];if(!j){k=0;l=0;m=0;n=0;b=k;c=l;d=m;e=n;return[b,c,d,e];}o=i.Min.X;p=i.Min.Y;q=i.Max.X;r=i.Max.Y;b=o;c=p;d=q;e=r;return[b,c,d,e];};$ptrType(I).prototype.Dst=function(a){return this.$get().Dst(a);};I.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g;b=0;c=0;d=0;e=0;f=this;g=f.Dst(a);b=g[0];c=g[1];d=g[2];e=g[3];return[b,c,d,e];};$ptrType(I).prototype.Src=function(a){return this.$get().Src(a);};J=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:b=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,O.zero()),new A.ColorM.ptr(false,Q.zero()),R.nil);b.GeoM.Translate(24,40);b.ColorM.Scale(0.5,0.5,0.5,1);c=a.DrawImage(F,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=new S([]);e=0;while(true){if(!(e<=9)){break;}if(A.IsKeyPressed((e>>0)+0>>0)){d=$append(d,$encodeRune((e+48>>0)));}e=e+(1)>>0;}f=65;while(true){if(!(f<=90)){break;}if(A.IsKeyPressed(((f>>0)-65>>0)+10>>0)){d=$append(d,$encodeRune(f));}f=f+(1)>>0;}g=1;while(true){if(!(g<=12)){break;}if(A.IsKeyPressed(((g>>0)+46>>0)-1>>0)){d=$append(d,"F"+E.Itoa(g));}g=g+(1)>>0;}h=H;i=0;j=$keys(h);while(true){if(!(islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AM,AO,AQ,AT;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AM=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new AL.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewCMYK=AM;AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};AT=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=0;j=0;k=g;l=h;m=i;n=j;o=f;if(o===1){m=(p=((e.Max.X+1>>0))/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))-(q=e.Min.X/2,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===2){m=(r=((e.Max.X+1>>0))/2,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))-(s=e.Min.X/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(t=((e.Max.Y+1>>0))/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))-(u=e.Min.Y/2,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===3){m=k;n=(v=((e.Max.Y+1>>0))/2,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))-(w=e.Min.Y/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===4){m=(x=((e.Max.X+3>>0))/4,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))-(y=e.Min.X/4,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===5){m=(z=((e.Max.X+3>>0))/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))-(aa=e.Min.X/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(ab=((e.Max.Y+1>>0))/2,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero"))-(ac=e.Min.Y/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;}else{m=k;n=l;}ad=($imul(k,l))+($imul(($imul(0,m)),n))>>0;ae=($imul(k,l))+($imul(($imul(1,m)),n))>>0;af=($imul(k,l))+($imul(($imul(2,m)),n))>>0;ag=$makeSlice(AV,af);return new AS.ptr($subslice(ag,0,ad,ad),$subslice(ag,ad,ae,ae),$subslice(ag,ae,af,af),k,m,f,$clone(e,Q));};$pkg.NewYCbCr=AT;O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AG,AH,AM,AN,AQ,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AG=function(a,b,c){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];e=[e];e[0]=BL.nil;d[0]=$ifaceNil;$r=AB((function(a,b,c,d,e){return function $b(f){var $ptr,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;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=BP.nil;h=BO.nil;i=D.NewTexture(f,a[0],b[0],AA(f,c[0]));g=i[0];d[0]=i[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(f,g);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;h=j[0];d[0]=j[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}e[0]=new AE.ptr(h,g,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(d[0],$ifaceNil))){return[BL.nil,d[0]];}f=e[0].Clear();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return[BL.nil,g];case 4:I.SetFinalizer(e[0],new BT($methodExpr(BL,"Dispose")));return[e[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AG};}$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.NewImage=AG;AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/jpeg"]=(function(){var $pkg={},$init,E,F,B,C,D,A,H,J,L,M,O,R,S,AD,AF,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BW,BX,BY,I,N,P,T,AE,AG,K,U,V,W,AH;E=$packages["bufio"];F=$packages["errors"];B=$packages["image"];C=$packages["image/color"];D=$packages["image/internal/imageutil"];A=$packages["io"];H=$pkg.huffman=$newType(0,$kindStruct,"jpeg.huffman","huffman","image/jpeg",function(nCodes_,lut_,vals_,minCodes_,maxCodes_,valsIndices_){this.$val=this;if(arguments.length===0){this.nCodes=0;this.lut=BF.zero();this.vals=BG.zero();this.minCodes=AW.zero();this.maxCodes=AW.zero();this.valsIndices=AW.zero();return;}this.nCodes=nCodes_;this.lut=lut_;this.vals=vals_;this.minCodes=minCodes_;this.maxCodes=maxCodes_;this.valsIndices=valsIndices_;});J=$pkg.block=$newType(256,$kindArray,"jpeg.block","block","image/jpeg",null);L=$pkg.FormatError=$newType(8,$kindString,"jpeg.FormatError","FormatError","image/jpeg",null);M=$pkg.UnsupportedError=$newType(8,$kindString,"jpeg.UnsupportedError","UnsupportedError","image/jpeg",null);O=$pkg.component=$newType(0,$kindStruct,"jpeg.component","component","image/jpeg",function(h_,v_,c_,tq_){this.$val=this;if(arguments.length===0){this.h=0;this.v=0;this.c=0;this.tq=0;return;}this.h=h_;this.v=v_;this.c=c_;this.tq=tq_;});R=$pkg.bits=$newType(0,$kindStruct,"jpeg.bits","bits","image/jpeg",function(a_,m_,n_){this.$val=this;if(arguments.length===0){this.a=0;this.m=0;this.n=0;return;}this.a=a_;this.m=m_;this.n=n_;});S=$pkg.decoder=$newType(0,$kindStruct,"jpeg.decoder","decoder","image/jpeg",function(r_,bits_,bytes_,width_,height_,img1_,img3_,blackPix_,blackStride_,ri_,nComp_,progressive_,jfif_,adobeTransformValid_,adobeTransform_,eobRun_,comp_,progCoeffs_,huff_,quant_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=new R.ptr(0,0,0);this.bytes=new BB.ptr(BA.zero(),0,0,0);this.width=0;this.height=0;this.img1=AX.nil;this.img3=AY.nil;this.blackPix=AV.nil;this.blackStride=0;this.ri=0;this.nComp=0;this.progressive=false;this.jfif=false;this.adobeTransformValid=false;this.adobeTransform=0;this.eobRun=0;this.comp=BC.zero();this.progCoeffs=BE.zero();this.huff=BI.zero();this.quant=BK.zero();this.tmp=BL.zero();return;}this.r=r_;this.bits=bits_;this.bytes=bytes_;this.width=width_;this.height=height_;this.img1=img1_;this.img3=img3_;this.blackPix=blackPix_;this.blackStride=blackStride_;this.ri=ri_;this.nComp=nComp_;this.progressive=progressive_;this.jfif=jfif_;this.adobeTransformValid=adobeTransformValid_;this.adobeTransform=adobeTransform_;this.eobRun=eobRun_;this.comp=comp_;this.progCoeffs=progCoeffs_;this.huff=huff_;this.quant=quant_;this.tmp=tmp_;});AD=$pkg.huffmanSpec=$newType(0,$kindStruct,"jpeg.huffmanSpec","huffmanSpec","image/jpeg",function(count_,value_){this.$val=this;if(arguments.length===0){this.count=AU.zero();this.value=AV.nil;return;}this.count=count_;this.value=value_;});AF=$pkg.huffmanLUT=$newType(12,$kindSlice,"jpeg.huffmanLUT","huffmanLUT","image/jpeg",null);AS=$arrayType(AF,4);AU=$arrayType($Uint8,16);AV=$sliceType($Uint8);AW=$arrayType($Int32,16);AX=$ptrType(B.Gray);AY=$ptrType(B.YCbCr);AZ=$structType([{prop:"src",name:"src",pkg:"image/jpeg",typ:AV,tag:""},{prop:"stride",name:"stride",pkg:"image/jpeg",typ:$Int,tag:""}]);BA=$arrayType($Uint8,4096);BB=$structType([{prop:"buf",name:"buf",pkg:"image/jpeg",typ:BA,tag:""},{prop:"i",name:"i",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"j",name:"j",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nUnreadable",name:"nUnreadable",pkg:"image/jpeg",typ:$Int,tag:""}]);BC=$arrayType(O,4);BD=$sliceType(J);BE=$arrayType(BD,4);BF=$arrayType($Uint16,256);BG=$arrayType($Uint8,256);BH=$arrayType(H,4);BI=$arrayType(BH,2);BJ=$arrayType($Int32,64);BK=$arrayType(J,4);BL=$arrayType($Uint8,128);BM=$structType([{prop:"compIndex",name:"compIndex",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"td",name:"td",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"ta",name:"ta",pkg:"image/jpeg",typ:$Uint8,tag:""}]);BN=$arrayType(BM,4);BO=$sliceType(O);BP=$arrayType($Int32,4);BQ=$sliceType($Uint32);BR=$ptrType(AF);BW=$ptrType(H);BX=$ptrType(J);BY=$ptrType(S);S.ptr.prototype.ensureNBits=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;case 1:d=b.readByteStuffedByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){if($interfaceIsEqual(f,A.EOF)){return new L(I);}return f;}b.bits.a=((b.bits.a<<8>>>0)|(e>>>0))>>>0;b.bits.n=b.bits.n+(8)>>0;if(b.bits.m===0){b.bits.m=128;}else{b.bits.m=(g=(8),g<32?(b.bits.m<>>0;}if(b.bits.n>=a){$s=2;continue;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ensureNBits};}$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;};S.prototype.ensureNBits=function(a){return this.$val.ensureNBits(a);};S.ptr.prototype.receiveExtend=function(a){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:b=this;if(b.bits.n<(a>>0)){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:case 2:b.bits.n=b.bits.n-((a>>0))>>0;b.bits.m=(e=(a),e<32?(b.bits.m>>>e):0)>>>0;g=(f=a,f<32?(1<>0;i=(((h=(b.bits.n<<24>>>24),h<32?(b.bits.a>>>h):0)>>>0)>>0)&((g-1>>0));if(i<(g>>1>>0)){i=i+(((((j=a,j<32?(-1<>0))+1>>0))>>0;}return[i,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.receiveExtend};}$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;};S.prototype.receiveExtend=function(a){return this.$val.receiveExtend(a);};S.ptr.prototype.processDHT=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,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;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;case 1:if(!(a>0)){$s=2;continue;}if(a<17){return new L("DHT has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,17));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return d;case 5:e=b.tmp[0]>>>4<<24>>>24;if(e>1){return new L("bad Tc value");}f=(b.tmp[0]&15)>>>0;if(f>3||!b.progressive&&f>1){return new L("bad Th value");}i=(g=(h=b.huff,((e<0||e>=h.length)?$throwRuntimeError("index out of range"):h[e])),((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]));i.nCodes=0;j=AW.zero();k=j;l=0;while(true){if(!(l<16)){break;}m=l;((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]=((n=b.tmp,o=m+1>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]))>>0));i.nCodes=i.nCodes+(((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]))>>0;l++;}if(i.nCodes===0){return new L("Huffman table has zero length");}if(i.nCodes>256){return new L("Huffman table has excessive length");}a=a-(((i.nCodes>>0)+17>>0))>>0;if(a<0){return new L("DHT has wrong length");}p=b.readFull($subslice(new AV(i.vals),0,i.nCodes));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return q;case 8:r=i.lut;s=0;while(true){if(!(s<256)){break;}t=s;(u=i.lut,((t<0||t>=u.length)?$throwRuntimeError("index out of range"):u[t]=0));s++;}v=0;w=0;x=v;y=w;z=0;while(true){if(!(z<8)){break;}y=(aa=(1),aa<32?(y<>>0;ab=0;while(true){if(!(ab<((z<0||z>=j.length)?$throwRuntimeError("index out of range"):j[z]))){break;}ad=(((ac=((7-z>>>0)),ac<32?(y<>>0)<<24>>>24);af=((((ae=i.vals,((x<0||x>=ae.length)?$throwRuntimeError("index out of range"):ae[x]))<<16>>>16)<<8<<16>>>16)|((2+z>>>0)<<16>>>16))>>>0;ag=0;while(true){if(!(ag<((ah=((7-z>>>0)),ah<32?(1<>>24))){break;}(ai=i.lut,aj=(ad|ag)>>>0,((aj<0||aj>=ai.length)?$throwRuntimeError("index out of range"):ai[aj]=af));ag=ag+(1)<<24>>>24;}y=y+(1)>>>0;x=x+(1)>>>0;ab=ab+(1)>>0;}z=z+(1)>>>0;}ak=0;al=0;am=ak;an=al;ao=j;ap=0;while(true){if(!(ap<16)){break;}aq=ap;ar=((ap<0||ap>=ao.length)?$throwRuntimeError("index out of range"):ao[ap]);if(ar===0){(as=i.minCodes,((aq<0||aq>=as.length)?$throwRuntimeError("index out of range"):as[aq]=-1));(at=i.maxCodes,((aq<0||aq>=at.length)?$throwRuntimeError("index out of range"):at[aq]=-1));(au=i.valsIndices,((aq<0||aq>=au.length)?$throwRuntimeError("index out of range"):au[aq]=-1));}else{(av=i.minCodes,((aq<0||aq>=av.length)?$throwRuntimeError("index out of range"):av[aq]=am));(aw=i.maxCodes,((aq<0||aq>=aw.length)?$throwRuntimeError("index out of range"):aw[aq]=((am+ar>>0)-1>>0)));(ax=i.valsIndices,((aq<0||aq>=ax.length)?$throwRuntimeError("index out of range"):ax[aq]=an));am=am+(ar)>>0;an=an+(ar)>>0;}am=(ay=(1),ay<32?(am<>0;ap++;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDHT};}$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.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.processDHT=function(a){return this.$val.processDHT(a);};S.ptr.prototype.decodeHuffman=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a.nCodes===0){return[0,new L("uninitialized Huffman table")];}if(b.bits.n<8){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits(8);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(d,new L(T)))&&!($interfaceIsEqual(d,new L(I)))){return[0,d];}if(!((b.bytes.nUnreadable===0))){b.unreadByteStuffedByte();}$s=6;continue;case 5:case 2:h=(e=a.lut,f=((((g=((b.bits.n-8>>0)>>>0),g<32?(b.bits.a>>>g):0)>>>0))&255)>>>0,((f<0||f>=e.length)?$throwRuntimeError("index out of range"):e[f]));if(!((h===0))){i=(((h&255)>>>0))-1<<16>>>16;b.bits.n=b.bits.n-((i>>0))>>0;b.bits.m=(j=(i),j<32?(b.bits.m>>>j):0)>>>0;return[((h>>>8<<16>>>16)<<24>>>24),$ifaceNil];}case 6:k=0;l=0;m=k;n=l;case 7:if(!(m<16)){$s=8;continue;}if(b.bits.n===0){$s=9;continue;}$s=10;continue;case 9:o=b.ensureNBits(1);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return[0,p];case 13:case 10:if(!((((b.bits.a&b.bits.m)>>>0)===0))){n=n|(1);}b.bits.n=b.bits.n-(1)>>0;b.bits.m=(q=(1),q<32?(b.bits.m>>>q):0)>>>0;if(n<=(r=a.maxCodes,((m<0||m>=r.length)?$throwRuntimeError("index out of range"):r[m]))){return[(s=a.vals,t=((u=a.valsIndices,((m<0||m>=u.length)?$throwRuntimeError("index out of range"):u[m]))+n>>0)-(v=a.minCodes,((m<0||m>=v.length)?$throwRuntimeError("index out of range"):v[m]))>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),$ifaceNil];}n=(w=(1),w<32?(n<>0;m=m+(1)>>0;$s=7;continue;case 8:return[0,new L("bad Huffman code")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeHuffman};}$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.$s=$s;$f.$r=$r;return $f;};S.prototype.decodeHuffman=function(a){return this.$val.decodeHuffman(a);};S.ptr.prototype.decodeBit=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.bits.n===0){$s=1;continue;}$s=2;continue;case 1:b=a.ensureNBits(1);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[false,c];case 5:case 2:d=!((((a.bits.a&a.bits.m)>>>0)===0));a.bits.n=a.bits.n-(1)>>0;a.bits.m=(e=(1),e<32?(a.bits.m>>>e):0)>>>0;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBit};}$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;};S.prototype.decodeBit=function(){return this.$val.decodeBit();};S.ptr.prototype.decodeBits=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;if(b.bits.n>0)>>>0),e<32?(b.bits.a>>>e):0)>>>0;f=(f&(((((g=(a>>>0),g<32?(1<>>0))-1>>>0)))>>>0;b.bits.n=b.bits.n-(a)>>0;b.bits.m=(h=((a>>>0)),h<32?(b.bits.m>>>h):0)>>>0;return[f,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBits};}$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;};S.prototype.decodeBits=function(a){return this.$val.decodeBits(a);};K=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,bq,br,bs,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;while(true){if(!(b<8)){break;}c=$imul(b,8);if(((d=c+1>>0,(a.nilCheck,((d<0||d>=a.length)?$throwRuntimeError("index out of range"):a[d])))===0)&&((e=c+2>>0,(a.nilCheck,((e<0||e>=a.length)?$throwRuntimeError("index out of range"):a[e])))===0)&&((f=c+3>>0,(a.nilCheck,((f<0||f>=a.length)?$throwRuntimeError("index out of range"):a[f])))===0)&&((g=c+4>>0,(a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g])))===0)&&((h=c+5>>0,(a.nilCheck,((h<0||h>=a.length)?$throwRuntimeError("index out of range"):a[h])))===0)&&((i=c+6>>0,(a.nilCheck,((i<0||i>=a.length)?$throwRuntimeError("index out of range"):a[i])))===0)&&((j=c+7>>0,(a.nilCheck,((j<0||j>=a.length)?$throwRuntimeError("index out of range"):a[j])))===0)){l=(k=c+0>>0,(a.nilCheck,((k<0||k>=a.length)?$throwRuntimeError("index out of range"):a[k])))<<3>>0;(m=c+0>>0,a.nilCheck,((m<0||m>=a.length)?$throwRuntimeError("index out of range"):a[m]=l));(n=c+1>>0,a.nilCheck,((n<0||n>=a.length)?$throwRuntimeError("index out of range"):a[n]=l));(o=c+2>>0,a.nilCheck,((o<0||o>=a.length)?$throwRuntimeError("index out of range"):a[o]=l));(p=c+3>>0,a.nilCheck,((p<0||p>=a.length)?$throwRuntimeError("index out of range"):a[p]=l));(q=c+4>>0,a.nilCheck,((q<0||q>=a.length)?$throwRuntimeError("index out of range"):a[q]=l));(r=c+5>>0,a.nilCheck,((r<0||r>=a.length)?$throwRuntimeError("index out of range"):a[r]=l));(s=c+6>>0,a.nilCheck,((s<0||s>=a.length)?$throwRuntimeError("index out of range"):a[s]=l));(t=c+7>>0,a.nilCheck,((t<0||t>=a.length)?$throwRuntimeError("index out of range"):a[t]=l));b=b+(1)>>0;continue;}v=(((u=c+0>>0,(a.nilCheck,((u<0||u>=a.length)?$throwRuntimeError("index out of range"):a[u])))<<11>>0))+128>>0;x=(w=c+4>>0,(a.nilCheck,((w<0||w>=a.length)?$throwRuntimeError("index out of range"):a[w])))<<11>>0;z=(y=c+6>>0,(a.nilCheck,((y<0||y>=a.length)?$throwRuntimeError("index out of range"):a[y])));ab=(aa=c+2>>0,(a.nilCheck,((aa<0||aa>=a.length)?$throwRuntimeError("index out of range"):a[aa])));ad=(ac=c+1>>0,(a.nilCheck,((ac<0||ac>=a.length)?$throwRuntimeError("index out of range"):a[ac])));af=(ae=c+7>>0,(a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae])));ah=(ag=c+5>>0,(a.nilCheck,((ag<0||ag>=a.length)?$throwRuntimeError("index out of range"):a[ag])));aj=(ai=c+3>>0,(a.nilCheck,((ai<0||ai>=a.length)?$throwRuntimeError("index out of range"):a[ai])));ak=$imul(565,((ad+af>>0)));ad=ak+($imul(2276,ad))>>0;af=ak-($imul(3406,af))>>0;ak=$imul(2408,((ah+aj>>0)));ah=ak-($imul(799,ah))>>0;aj=ak-($imul(4017,aj))>>0;ak=v+x>>0;v=v-(x)>>0;x=$imul(1108,((ab+z>>0)));z=x-($imul(3784,z))>>0;ab=x+($imul(1568,ab))>>0;x=ad+ah>>0;ad=ad-(ah)>>0;ah=af+aj>>0;af=af-(aj)>>0;aj=ak+ab>>0;ak=ak-(ab)>>0;ab=v+z>>0;v=v-(z)>>0;z=((($imul(181,((ad+af>>0))))+128>>0))>>8>>0;ad=((($imul(181,((ad-af>>0))))+128>>0))>>8>>0;(al=c+0>>0,a.nilCheck,((al<0||al>=a.length)?$throwRuntimeError("index out of range"):a[al]=(((aj+x>>0))>>8>>0)));(am=c+1>>0,a.nilCheck,((am<0||am>=a.length)?$throwRuntimeError("index out of range"):a[am]=(((ab+z>>0))>>8>>0)));(an=c+2>>0,a.nilCheck,((an<0||an>=a.length)?$throwRuntimeError("index out of range"):a[an]=(((v+ad>>0))>>8>>0)));(ao=c+3>>0,a.nilCheck,((ao<0||ao>=a.length)?$throwRuntimeError("index out of range"):a[ao]=(((ak+ah>>0))>>8>>0)));(ap=c+4>>0,a.nilCheck,((ap<0||ap>=a.length)?$throwRuntimeError("index out of range"):a[ap]=(((ak-ah>>0))>>8>>0)));(aq=c+5>>0,a.nilCheck,((aq<0||aq>=a.length)?$throwRuntimeError("index out of range"):a[aq]=(((v-ad>>0))>>8>>0)));(ar=c+6>>0,a.nilCheck,((ar<0||ar>=a.length)?$throwRuntimeError("index out of range"):a[ar]=(((ab-z>>0))>>8>>0)));(as=c+7>>0,a.nilCheck,((as<0||as>=a.length)?$throwRuntimeError("index out of range"):a[as]=(((aj-x>>0))>>8>>0)));b=b+(1)>>0;}at=0;while(true){if(!(at<8)){break;}av=(((au=0+at>>0,(a.nilCheck,((au<0||au>=a.length)?$throwRuntimeError("index out of range"):a[au])))<<8>>0))+8192>>0;ax=(aw=32+at>>0,(a.nilCheck,((aw<0||aw>=a.length)?$throwRuntimeError("index out of range"):a[aw])))<<8>>0;az=(ay=48+at>>0,(a.nilCheck,((ay<0||ay>=a.length)?$throwRuntimeError("index out of range"):a[ay])));bb=(ba=16+at>>0,(a.nilCheck,((ba<0||ba>=a.length)?$throwRuntimeError("index out of range"):a[ba])));bd=(bc=8+at>>0,(a.nilCheck,((bc<0||bc>=a.length)?$throwRuntimeError("index out of range"):a[bc])));bf=(be=56+at>>0,(a.nilCheck,((be<0||be>=a.length)?$throwRuntimeError("index out of range"):a[be])));bh=(bg=40+at>>0,(a.nilCheck,((bg<0||bg>=a.length)?$throwRuntimeError("index out of range"):a[bg])));bj=(bi=24+at>>0,(a.nilCheck,((bi<0||bi>=a.length)?$throwRuntimeError("index out of range"):a[bi])));bk=($imul(565,((bd+bf>>0))))+4>>0;bd=((bk+($imul(2276,bd))>>0))>>3>>0;bf=((bk-($imul(3406,bf))>>0))>>3>>0;bk=($imul(2408,((bh+bj>>0))))+4>>0;bh=((bk-($imul(799,bh))>>0))>>3>>0;bj=((bk-($imul(4017,bj))>>0))>>3>>0;bk=av+ax>>0;av=av-(ax)>>0;ax=($imul(1108,((bb+az>>0))))+4>>0;az=((ax-($imul(3784,az))>>0))>>3>>0;bb=((ax+($imul(1568,bb))>>0))>>3>>0;ax=bd+bh>>0;bd=bd-(bh)>>0;bh=bf+bj>>0;bf=bf-(bj)>>0;bj=bk+bb>>0;bk=bk-(bb)>>0;bb=av+az>>0;av=av-(az)>>0;az=((($imul(181,((bd+bf>>0))))+128>>0))>>8>>0;bd=((($imul(181,((bd-bf>>0))))+128>>0))>>8>>0;(bl=0+at>>0,a.nilCheck,((bl<0||bl>=a.length)?$throwRuntimeError("index out of range"):a[bl]=(((bj+ax>>0))>>14>>0)));(bm=8+at>>0,a.nilCheck,((bm<0||bm>=a.length)?$throwRuntimeError("index out of range"):a[bm]=(((bb+az>>0))>>14>>0)));(bn=16+at>>0,a.nilCheck,((bn<0||bn>=a.length)?$throwRuntimeError("index out of range"):a[bn]=(((av+bd>>0))>>14>>0)));(bo=24+at>>0,a.nilCheck,((bo<0||bo>=a.length)?$throwRuntimeError("index out of range"):a[bo]=(((bk+bh>>0))>>14>>0)));(bp=32+at>>0,a.nilCheck,((bp<0||bp>=a.length)?$throwRuntimeError("index out of range"):a[bp]=(((bk-bh>>0))>>14>>0)));(bq=40+at>>0,a.nilCheck,((bq<0||bq>=a.length)?$throwRuntimeError("index out of range"):a[bq]=(((av-bd>>0))>>14>>0)));(br=48+at>>0,a.nilCheck,((br<0||br>=a.length)?$throwRuntimeError("index out of range"):a[br]=(((bb-az>>0))>>14>>0)));(bs=56+at>>0,a.nilCheck,((bs<0||bs>=a.length)?$throwRuntimeError("index out of range"):a[bs]=(((bj-ax>>0))>>14>>0)));at=at+(1)>>0;}};L.prototype.Error=function(){var $ptr,a;a=this.$val;return"invalid JPEG format: "+a;};$ptrType(L).prototype.Error=function(){return new L(this.$get()).Error();};M.prototype.Error=function(){var $ptr,a;a=this.$val;return"unsupported JPEG feature: "+a;};$ptrType(M).prototype.Error=function(){return new M(this.$get()).Error();};S.ptr.prototype.fill=function(){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:a=this;if(!((a.bytes.i===a.bytes.j))){$panic(new $String("jpeg: fill called when unread bytes exist"));}if(a.bytes.j>2){a.bytes.buf[0]=(b=a.bytes.buf,c=a.bytes.j-2>>0,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]));a.bytes.buf[1]=(d=a.bytes.buf,e=a.bytes.j-1>>0,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));f=2;g=2;a.bytes.i=f;a.bytes.j=g;}i=a.r.Read($subslice(new AV(a.bytes.buf),a.bytes.j));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];a.bytes.j=a.bytes.j+(j)>>0;if(j>0){k=$ifaceNil;}return k;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.fill};}$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;};S.prototype.fill=function(){return this.$val.fill();};S.ptr.prototype.unreadByteStuffedByte=function(){var $ptr,a,b,c;a=this;a.bytes.i=a.bytes.i-(a.bytes.nUnreadable)>>0;a.bytes.nUnreadable=0;if(a.bits.n>=8){a.bits.a=(b=(8),b<32?(a.bits.a>>>b):0)>>>0;a.bits.n=a.bits.n-(8)>>0;a.bits.m=(c=(8),c<32?(a.bits.m>>>c):0)>>>0;}};S.prototype.unreadByteStuffedByte=function(){return this.$val.unreadByteStuffedByte();};S.ptr.prototype.readByte=function(){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:a=0;b=$ifaceNil;c=this;case 1:if(!(c.bytes.i===c.bytes.j)){$s=2;continue;}d=c.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(b,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=0;f=b;a=e;b=f;return[a,b];case 5:$s=1;continue;case 2:a=(g=c.bytes.buf,h=c.bytes.i,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=0;i=a;j=$ifaceNil;a=i;b=j;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByte};}$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;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.readByteStuffedByte=function(){var $ptr,a,aa,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;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=0;b=$ifaceNil;c=this;if((c.bytes.i+2>>0)<=c.bytes.j){a=(d=c.bytes.buf,e=c.bytes.i,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=1;if(!((a===255))){f=a;g=b;a=f;b=g;return[a,b];}if(!(((h=c.bytes.buf,i=c.bytes.i,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]))===0))){j=0;k=new L(T);a=j;b=k;return[a,b];}c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=2;l=255;m=$ifaceNil;a=l;b=m;return[a,b];}c.bytes.nUnreadable=0;o=c.readByte();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;a=n[0];b=n[1];if(!($interfaceIsEqual(b,$ifaceNil))){p=0;q=b;a=p;b=q;return[a,b];}c.bytes.nUnreadable=1;if(!((a===255))){r=a;s=$ifaceNil;a=r;b=s;return[a,b];}u=c.readByte();$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;a=t[0];b=t[1];if(!($interfaceIsEqual(b,$ifaceNil))){v=0;w=b;a=v;b=w;return[a,b];}c.bytes.nUnreadable=2;if(!((a===0))){x=0;y=new L(T);a=x;b=y;return[a,b];}z=255;aa=$ifaceNil;a=z;b=aa;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByteStuffedByte};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$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.readByteStuffedByte=function(){return this.$val.readByteStuffedByte();};S.ptr.prototype.readFull=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=$copySlice(a,$subslice(new AV(b.bytes.buf),b.bytes.i,b.bytes.j));a=$subslice(a,c);b.bytes.i=b.bytes.i+(c)>>0;if(a.$length===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readFull};}$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;};S.prototype.readFull=function(a){return this.$val.readFull(a);};S.ptr.prototype.ignore=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=b.bytes.j-b.bytes.i>>0;if(c>a){c=a;}b.bytes.i=b.bytes.i+(c)>>0;a=a-(c)>>0;if(a===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ignore};}$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;};S.prototype.ignore=function(a){return this.$val.ignore(a);};S.ptr.prototype.processSOF=function(a){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,$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;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;if(!((b.nComp===0))){return new L("multiple SOF markers");}c=a;if(c===9){b.nComp=1;}else if(c===15){b.nComp=3;}else if(c===18){b.nComp=4;}else{return new M("number of components");}d=b.readFull($subslice(new AV(b.tmp),0,a));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:if(!((b.tmp[0]===8))){return new M("precision");}b.height=((b.tmp[1]>>0)<<8>>0)+(b.tmp[2]>>0)>>0;b.width=((b.tmp[3]>>0)<<8>>0)+(b.tmp[4]>>0)>>0;if(!(((b.tmp[5]>>0)===b.nComp))){return new L("SOF has wrong length");}f=0;while(true){if(!(f=i.length)?$throwRuntimeError("index out of range"):i[f])).c=(g=b.tmp,h=6+($imul(3,f))>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));j=0;while(true){if(!(j=k.length)?$throwRuntimeError("index out of range"):k[f])).c===(l=b.comp,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j])).c){return new L("repeated component identifier");}j=j+(1)>>0;}(o=b.comp,((f<0||f>=o.length)?$throwRuntimeError("index out of range"):o[f])).tq=(m=b.tmp,n=8+($imul(3,f))>>0,((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]));if((p=b.comp,((f<0||f>=p.length)?$throwRuntimeError("index out of range"):p[f])).tq>3){return new L("bad Tq value");}s=(q=b.tmp,r=7+($imul(3,f))>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r]));t=((s>>>4<<24>>>24)>>0);u=(((s&15)>>>0)>>0);v=t;w=u;if(v<1||4=ae.length)?$throwRuntimeError("index out of range"):ae[f])).h=v;(af=b.comp,((f<0||f>=af.length)?$throwRuntimeError("index out of range"):af[f])).v=w;f=f+(1)>>0;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOF};}$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.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.processSOF=function(a){return this.$val.processSOF(a);};S.ptr.prototype.processDQT=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;case 1:if(!(a>0)){$s=2;continue;}a=a-(1)>>0;d=b.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=(e&15)>>>0;if(g>3){return new L("bad Tq value");}h=e>>>4<<24>>>24;if(h===0){$s=4;continue;}if(h===1){$s=5;continue;}$s=6;continue;case 4:if(a<64){$s=2;continue s;}a=a-(64)>>0;i=b.readFull($subslice(new AV(b.tmp),0,64));$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return j;case 10:k=(l=b.quant,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g]));m=0;while(true){if(!(m<64)){break;}n=m;(p=(q=b.quant,((g<0||g>=q.length)?$throwRuntimeError("index out of range"):q[g])),((n<0||n>=p.length)?$throwRuntimeError("index out of range"):p[n]=((o=b.tmp,((n<0||n>=o.length)?$throwRuntimeError("index out of range"):o[n]))>>0)));m++;}$s=7;continue;case 5:if(a<128){$s=2;continue s;}a=a-(128)>>0;r=b.readFull($subslice(new AV(b.tmp),0,128));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return s;case 13:t=(u=b.quant,((g<0||g>=u.length)?$throwRuntimeError("index out of range"):u[g]));v=0;while(true){if(!(v<64)){break;}w=v;(ab=(ac=b.quant,((g<0||g>=ac.length)?$throwRuntimeError("index out of range"):ac[g])),((w<0||w>=ab.length)?$throwRuntimeError("index out of range"):ab[w]=((((x=b.tmp,y=$imul(2,w),((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))>>0)<<8>>0)|((z=b.tmp,aa=($imul(2,w))+1>>0,((aa<0||aa>=z.length)?$throwRuntimeError("index out of range"):z[aa]))>>0))));v++;}$s=7;continue;case 6:return new L("bad Pq value");case 7:$s=1;continue;case 2:if(!((a===0))){return new L("DQT has wrong length");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDQT};}$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;};S.prototype.processDQT=function(a){return this.$val.processDQT(a);};S.ptr.prototype.processDRI=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;if(!((a===2))){return new L("DRI has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,2));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:b.ri=((b.tmp[0]>>0)<<8>>0)+(b.tmp[1]>>0)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDRI};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.processDRI=function(a){return this.$val.processDRI(a);};S.ptr.prototype.processApp0Marker=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;if(a<5){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,5));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(5)>>0;b.jfif=(b.tmp[0]===74)&&(b.tmp[1]===70)&&(b.tmp[2]===73)&&(b.tmp[3]===70)&&(b.tmp[4]===0);if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp0Marker};}$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;};S.prototype.processApp0Marker=function(a){return this.$val.processApp0Marker(a);};S.ptr.prototype.processApp14Marker=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;if(a<12){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,12));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(12)>>0;if((b.tmp[0]===65)&&(b.tmp[1]===100)&&(b.tmp[2]===111)&&(b.tmp[3]===98)&&(b.tmp[4]===101)){b.adobeTransformValid=true;b.adobeTransform=b.tmp[11];}if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp14Marker};}$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;};S.prototype.processApp14Marker=function(a){return this.$val.processApp14Marker(a);};S.ptr.prototype.decode=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,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;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;c.r=a;d=c.readFull($subslice(new AV(c.tmp),0,2));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,e];case 3:if(!((c.tmp[0]===255))||!((c.tmp[1]===216))){return[$ifaceNil,new L("missing SOI marker")];}case 4:f=c.readFull($subslice(new AV(c.tmp),0,2));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}case 7:if(!(!((c.tmp[0]===255)))){$s=8;continue;}c.tmp[0]=c.tmp[1];i=c.readByte();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.tmp[1]=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=7;continue;case 8:j=c.tmp[1];if(j===0){$s=10;continue;}$s=11;continue;case 10:$s=4;continue;case 11:case 12:if(!(j===255)){$s=13;continue;}l=c.readByte();$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];g=k[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=12;continue;case 13:if(j===217){$s=5;continue;}if(208<=j&&j<=215){$s=15;continue;}$s=16;continue;case 15:$s=4;continue;case 16:m=c.readFull($subslice(new AV(c.tmp),0,2));$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;if(!($interfaceIsEqual(g,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:return[$ifaceNil,g];case 19:n=(((c.tmp[0]>>0)<<8>>0)+(c.tmp[1]>>0)>>0)-2>>0;if(n<0){return[$ifaceNil,new L("short segment length")];}o=j;if(o===192||o===193||o===194){$s=20;continue;}if(o===196){$s=21;continue;}if(o===219){$s=22;continue;}if(o===218){$s=23;continue;}if(o===221){$s=24;continue;}if(o===224){$s=25;continue;}if(o===238){$s=26;continue;}$s=27;continue;case 20:c.progressive=j===194;p=c.processSOF(n);$s=29;case 29:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}g=p;if(b&&c.jfif){return[$ifaceNil,g];}$s=28;continue;case 21:if(b){$s=30;continue;}$s=31;continue;case 30:q=c.ignore(n);$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}g=q;$s=32;continue;case 31:r=c.processDHT(n);$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 32:$s=28;continue;case 22:if(b){$s=35;continue;}$s=36;continue;case 35:s=c.ignore(n);$s=38;case 38:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}g=s;$s=37;continue;case 36:t=c.processDQT(n);$s=39;case 39:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}g=t;case 37:$s=28;continue;case 23:if(b){return[$ifaceNil,$ifaceNil];}u=c.processSOS(n);$s=40;case 40:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}g=u;$s=28;continue;case 24:if(b){$s=41;continue;}$s=42;continue;case 41:v=c.ignore(n);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}g=v;$s=43;continue;case 42:w=c.processDRI(n);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}g=w;case 43:$s=28;continue;case 25:x=c.processApp0Marker(n);$s=46;case 46:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}g=x;$s=28;continue;case 26:y=c.processApp14Marker(n);$s=47;case 47:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}g=y;$s=28;continue;case 27:if(224<=j&&j<=239||(j===254)){$s=48;continue;}if(j<192){$s=49;continue;}$s=50;continue;case 48:z=c.ignore(n);$s=52;case 52:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}g=z;$s=51;continue;case 49:g=new L("unknown marker");$s=51;continue;case 50:g=new M("unknown marker");case 51:case 28:if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=4;continue;case 5:if(!(c.img1===AX.nil)){return[c.img1,$ifaceNil];}if(!(c.img3===AY.nil)){if(!(c.blackPix===AV.nil)){return c.applyBlack();}else if(c.isRGB()){return c.convertToRGB();}return[c.img3,$ifaceNil];}return[$ifaceNil,new L("missing SOS marker")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decode};}$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.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.decode=function(a,b){return this.$val.decode(a,b);};S.ptr.prototype.applyBlack=function(){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;a=this;if(!a.adobeTransformValid){return[$ifaceNil,new M("unknown color model: 4-component JPEG doesn't have Adobe APP14 metadata")];}if(!((a.adobeTransform===0))){b=$clone(a.img3.Bounds(),B.Rectangle);c=B.NewRGBA(b);D.DrawYCbCr(c,b,a.img3,b.Min);d=0;e=b.Min.Y;f=d;g=e;while(true){if(!(g>0;i=b.Min.X;j=h;k=i;while(true){if(!(k=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+j]=(255-(l=a.blackPix,m=($imul(((g-b.Min.Y>>0)),a.blackStride))+((k-b.Min.X>>0))>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))<<24>>>24)));o=j+4>>0;p=k+1>>0;j=o;k=p;}q=f+c.Stride>>0;r=g+1>>0;f=q;g=r;}return[new B.CMYK.ptr(c.Pix,c.Stride,$clone(c.Rect,B.Rectangle)),$ifaceNil];}s=$clone(a.img3.Bounds(),B.Rectangle);t=B.NewCMYK(s);u=$toNativeArray($kindStruct,[new AZ.ptr(a.img3.Y,a.img3.YStride),new AZ.ptr(a.img3.Cb,a.img3.CStride),new AZ.ptr(a.img3.Cr,a.img3.CStride),new AZ.ptr(a.blackPix,a.blackStride)]);v=u;w=0;while(true){if(!(w<4)){break;}x=w;y=$clone(((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]),AZ);ab=!(((z=a.comp,((x<0||x>=z.length)?$throwRuntimeError("index out of range"):z[x])).h===a.comp[0].h))||!(((aa=a.comp,((x<0||x>=aa.length)?$throwRuntimeError("index out of range"):aa[x])).v===a.comp[0].v));ac=0;ad=s.Min.Y;ae=ac;af=ad;while(true){if(!(af>0;if(ab){ag=(ah=ag/(2),(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero"));}ai=ae+x>>0;aj=s.Min.X;ak=ai;al=aj;while(true){if(!(al>0;if(ab){am=(an=am/(2),(an===an&&an!==1/0&&an!==-1/0)?an>>0:$throwRuntimeError("integer divide by zero"));}(aq=t.Pix,((ak<0||ak>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ak]=(255-(ao=y.src,ap=($imul(ag,y.stride))+am>>0,((ap<0||ap>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ap]))<<24>>>24)));ar=ak+4>>0;as=al+1>>0;ak=ar;al=as;}at=ae+t.Stride>>0;au=af+1>>0;ae=at;af=au;}w++;}return[t,$ifaceNil];};S.prototype.applyBlack=function(){return this.$val.applyBlack();};S.ptr.prototype.isRGB=function(){var $ptr,a;a=this;if(a.jfif){return false;}if(a.adobeTransformValid&&(a.adobeTransform===0)){return true;}return(a.comp[0].c===82)&&(a.comp[1].c===71)&&(a.comp[2].c===66);};S.prototype.isRGB=function(){return this.$val.isRGB();};S.ptr.prototype.convertToRGB=function(){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;a=this;c=(b=a.comp[0].h/a.comp[1].h,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));d=$clone(a.img3.Bounds(),B.Rectangle);e=B.NewRGBA(d);f=d.Min.Y;while(true){if(!(f>0;l=j;m=k;while(true){if(!(l>0)+0>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(n=a.img3.Y,o=h+l>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))));(u=e.Pix,v=(g+($imul(4,l))>>0)+1>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]=(r=a.img3.Cb,s=i+(t=l/c,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]))));(z=e.Pix,aa=(g+($imul(4,l))>>0)+2>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(w=a.img3.Cr,x=i+(y=l/c,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))));(ab=e.Pix,ac=(g+($imul(4,l))>>0)+3>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]=255));l=l+(1)>>0;}f=f+(1)>>0;}return[e,$ifaceNil];};S.prototype.convertToRGB=function(){return this.$val.convertToRGB();};U=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=U;V=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());d=b.decode(a,true);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new B.Config.ptr($ifaceNil,0,0),e];case 3:f=b.nComp;if(f===1){return[new B.Config.ptr(C.GrayModel,b.width,b.height),$ifaceNil];}else if(f===3){g=C.YCbCrModel;if(b.isRGB()){g=C.RGBAModel;}return[new B.Config.ptr(g,b.width,b.height),$ifaceNil];}else if(f===4){return[new B.Config.ptr(C.CMYKModel,b.width,b.height),$ifaceNil];}return[new B.Config.ptr($ifaceNil,0,0),new L("missing SOF marker")];}return;}if($f===undefined){$f={$blk:V};}$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.DecodeConfig=V;W=function(){var $ptr;B.RegisterFormat("jpeg","\xFF\xD8",U,V);};S.ptr.prototype.makeImg=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;if(c.nComp===1){d=B.NewGray(B.Rect(0,0,$imul(8,a),$imul(8,b)));c.img1=$assertType(d.SubImage(B.Rect(0,0,c.width,c.height)),AX);return;}e=c.comp[0].h;f=c.comp[0].v;h=(g=e/c.comp[1].h,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));j=(i=f/c.comp[1].v,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));k=0;l=(h<<4>>0)|j;if(l===17){k=0;}else if(l===18){k=3;}else if(l===33){k=1;}else if(l===34){k=2;}else if(l===65){k=4;}else if(l===66){k=5;}else{$panic(new $String("unreachable"));}m=B.NewYCbCr(B.Rect(0,0,$imul(($imul(8,e)),a),$imul(($imul(8,f)),b)),k);c.img3=$assertType(m.SubImage(B.Rect(0,0,c.width,c.height)),AY);if(c.nComp===4){n=c.comp[3].h;o=c.comp[3].v;p=n;q=o;c.blackPix=$makeSlice(AV,($imul(($imul(($imul(($imul(($imul(8,p)),a)),8)),q)),b)));c.blackStride=$imul(($imul(8,p)),a);}};S.prototype.makeImg=function(a,b){return this.$val.makeImg(a,b);};S.ptr.prototype.processSOS=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,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,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;em=$f.em;en=$f.en;eo=$f.eo;ep=$f.ep;eq=$f.eq;er=$f.er;es=$f.es;et=$f.et;eu=$f.eu;ev=$f.ev;ew=$f.ew;ex=$f.ex;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=[b];c=this;if(c.nComp===0){return new L("missing SOF marker");}if(a<6||(4+($imul(2,c.nComp))>>0)>0);if(!((a===(4+($imul(2,g))>>0)))){return new L("SOS length inconsistent with number of components");}h=BN.zero();i=0;j=0;while(true){if(!(j>0,((l<0||l>=k.length)?$throwRuntimeError("index out of range"):k[l]));n=-1;o=$subslice(new BO(c.comp),0,c.nComp);p=0;while(true){if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]),O);if(m===r.c){n=q;}p++;}if(n<0){return new L("unknown component selector");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex=(n<<24>>>24);s=0;while(true){if(!(s=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex===((s<0||s>=h.length)?$throwRuntimeError("index out of range"):h[s]).compIndex){return new L("repeated component selector");}s=s+(1)>>0;}i=i+(($imul((t=c.comp,((n<0||n>=t.length)?$throwRuntimeError("index out of range"):t[n])).h,(u=c.comp,((n<0||n>=u.length)?$throwRuntimeError("index out of range"):u[n])).v)))>>0;((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td=(v=c.tmp,w=2+($imul(2,j))>>0,((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]))>>>4<<24>>>24;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td>3){return new L("bad Td value");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta=((x=c.tmp,y=2+($imul(2,j))>>0,((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))&15)>>>0;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta>3){return new L("bad Ta value");}j=j+(1)>>0;}if(c.nComp>1&&i>10){return new L("total sampling factors too large");}z=0;aa=63;ab=0;ac=0;ad=z;ae=aa;af=ab;ag=ac;if(c.progressive){ad=((ah=c.tmp,ai=1+($imul(2,g))>>0,((ai<0||ai>=ah.length)?$throwRuntimeError("index out of range"):ah[ai]))>>0);ae=((aj=c.tmp,ak=2+($imul(2,g))>>0,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak]))>>0);af=(((al=c.tmp,am=3+($imul(2,g))>>0,((am<0||am>=al.length)?$throwRuntimeError("index out of range"):al[am]))>>>4<<24>>>24)>>>0);ag=((((an=c.tmp,ao=3+($imul(2,g))>>0,((ao<0||ao>=an.length)?$throwRuntimeError("index out of range"):an[ao]))&15)>>>0)>>>0);if(((ad===0)&&!((ae===0)))||ad>ae||64<=ae){return new L("bad spectral selection bounds");}if(!((ad===0))&&!((g===1))){return new L("progressive AC coefficients for more than one component");}if(!((af===0))&&!((af===(ag+1>>>0)))){return new L("bad successive approximation values");}}ap=c.comp[0].h;aq=c.comp[0].v;ar=ap;as=aq;au=(at=(((c.width+($imul(8,ar))>>0)-1>>0))/(($imul(8,ar))),(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero"));aw=(av=(((c.height+($imul(8,as))>>0)-1>>0))/(($imul(8,as))),(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(c.img1===AX.nil&&c.img3===AY.nil){c.makeImg(au,aw);}if(c.progressive){ax=0;while(true){if(!(ax=h.length)?$throwRuntimeError("index out of range"):h[ax]).compIndex;if((az=c.progCoeffs,((ay<0||ay>=az.length)?$throwRuntimeError("index out of range"):az[ay]))===BD.nil){(bc=c.progCoeffs,((ay<0||ay>=bc.length)?$throwRuntimeError("index out of range"):bc[ay]=$makeSlice(BD,($imul(($imul(($imul(au,aw)),(ba=c.comp,((ay<0||ay>=ba.length)?$throwRuntimeError("index out of range"):ba[ay])).h)),(bb=c.comp,((ay<0||ay>=bb.length)?$throwRuntimeError("index out of range"):bb[ay])).v)))));}ax=ax+(1)>>0;}}R.copy(c.bits,new R.ptr(0,0,0));bd=0;be=208;bf=bd;bg=be;b[0]=BJ.zero();bh=BP.zero();bi=0;bj=0;bk=bi;bl=bj;bm=0;bn=0;case 4:if(!(bn=h.length)?$throwRuntimeError("index out of range"):h[bp]).compIndex;bs=(br=c.comp,((bq<0||bq>=br.length)?$throwRuntimeError("index out of range"):br[bq])).h;bu=(bt=c.comp,((bq<0||bq>=bt.length)?$throwRuntimeError("index out of range"):bt[bq])).v;by=(bv=c.quant,bw=(bx=c.comp,((bq<0||bq>=bx.length)?$throwRuntimeError("index out of range"):bx[bq])).tq,((bw<0||bw>=bv.length)?$throwRuntimeError("index out of range"):bv[bw]));bz=0;case 10:if(!(bz<($imul(bs,bu)))){$s=11;continue;}if(!((g===1))){$s=12;continue;}$s=13;continue;case 12:bk=($imul(bs,bo))+(ca=bz%bs,ca===ca?ca:$throwRuntimeError("integer divide by zero"))>>0;bl=($imul(bu,bn))+(cb=bz/bs,(cb===cb&&cb!==1/0&&cb!==-1/0)?cb>>0:$throwRuntimeError("integer divide by zero"))>>0;$s=14;continue;case 13:cc=$imul(au,bs);bk=(cd=bm%cc,cd===cd?cd:$throwRuntimeError("integer divide by zero"));bl=(ce=bm/cc,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"));bm=bm+(1)>>0;if(($imul(bk,8))>=c.width||($imul(bl,8))>=c.height){bz=bz+(1)>>0;$s=10;continue;}case 14:if(c.progressive){J.copy(b[0],(cf=(cg=c.progCoeffs,((bq<0||bq>=cg.length)?$throwRuntimeError("index out of range"):cg[bq])),ch=($imul(($imul(bl,au)),bs))+bk>>0,((ch<0||ch>=cf.$length)?$throwRuntimeError("index out of range"):cf.$array[cf.$offset+ch])));}else{J.copy(b[0],BJ.zero());}if(!((af===0))){$s=15;continue;}$s=16;continue;case 15:cl=c.refine(b[0],(ci=c.huff[1],cj=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cj<0||cj>=ci.length)?$throwRuntimeError("index out of range"):ci[cj])),ad,ae,(ck=ag,ck<32?(1<>0);$s=18;case 18:if($c){$c=false;cl=cl.$blk();}if(cl&&cl.$blk!==undefined){break s;}cm=cl;if(!($interfaceIsEqual(cm,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:return cm;case 20:$s=17;continue;case 16:cn=ad;if(cn===0){$s=21;continue;}$s=22;continue;case 21:cn=cn+(1)>>0;cr=c.decodeHuffman((cp=c.huff[0],cq=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).td,((cq<0||cq>=cp.length)?$throwRuntimeError("index out of range"):cp[cq])));$s=23;case 23:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}co=cr;cs=co[0];ct=co[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}if(cs>16){return new M("excessive DC component");}cv=c.receiveExtend(cs);$s=24;case 24:if($c){$c=false;cv=cv.$blk();}if(cv&&cv.$blk!==undefined){break s;}cu=cv;cw=cu[0];ct=cu[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq]=(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])+(cw)>>0));b[0][0]=((cx=ag,cx<32?(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])<>0);case 22:if(cn<=ae&&c.eobRun>0){$s=25;continue;}$s=26;continue;case 25:c.eobRun=c.eobRun-(1)<<16>>>16;$s=27;continue;case 26:da=(cy=c.huff[1],cz=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cz<0||cz>=cy.length)?$throwRuntimeError("index out of range"):cy[cz]));case 28:if(!(cn<=ae)){$s=29;continue;}dc=c.decodeHuffman(da);$s=30;case 30:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}db=dc;dd=db[0];de=db[1];if(!($interfaceIsEqual(de,$ifaceNil))){return de;}df=dd>>>4<<24>>>24;dg=(dd&15)>>>0;if(!((dg===0))){$s=31;continue;}$s=32;continue;case 31:cn=cn+((df>>0))>>0;if(cn>ae){$s=29;continue;}di=c.receiveExtend(dg);$s=34;case 34:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}dh=di;dj=dh[0];dk=dh[1];if(!($interfaceIsEqual(dk,$ifaceNil))){return dk;}(dm=((cn<0||cn>=P.length)?$throwRuntimeError("index out of range"):P[cn]),((dm<0||dm>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dm]=((dl=ag,dl<32?(dj<>0)));$s=33;continue;case 32:if(!((df===15))){$s=35;continue;}$s=36;continue;case 35:c.eobRun=((dn=df,dn<32?(1<>>16);if(!((df===0))){$s=37;continue;}$s=38;continue;case 37:dq=c.decodeBits((df>>0));$s=39;case 39:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}dp=dq;dr=dp[0];ds=dp[1];if(!($interfaceIsEqual(ds,$ifaceNil))){return ds;}c.eobRun=(c.eobRun|((dr<<16>>>16)))>>>0;case 38:c.eobRun=c.eobRun-(1)<<16>>>16;$s=29;continue;case 36:cn=cn+(15)>>0;case 33:cn=cn+(1)>>0;$s=28;continue;case 29:case 27:case 17:if(c.progressive){if(!((ae===63))||!((ag===0))){J.copy((dt=(du=c.progCoeffs,((bq<0||bq>=du.length)?$throwRuntimeError("index out of range"):du[bq])),dv=($imul(($imul(bl,au)),bs))+bk>>0,((dv<0||dv>=dt.$length)?$throwRuntimeError("index out of range"):dt.$array[dt.$offset+dv])),b[0]);bz=bz+(1)>>0;$s=10;continue;}}dw=0;while(true){if(!(dw<64)){break;}(dy=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dy<0||dy>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dy]=($imul((dx=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dx<0||dx>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dx])),((by.nilCheck,((dw<0||dw>=by.length)?$throwRuntimeError("index out of range"):by[dw])))))));dw=dw+(1)>>0;}K(b[0]);dz=AV.nil;ea=0;eb=dz;ec=ea;if(c.nComp===1){ed=$subslice(c.img1.Pix,($imul(8,((($imul(bl,c.img1.Stride))+bk>>0)))));ee=c.img1.Stride;eb=ed;ec=ee;}else{ef=bq;if(ef===0){eg=$subslice(c.img3.Y,($imul(8,((($imul(bl,c.img3.YStride))+bk>>0)))));eh=c.img3.YStride;eb=eg;ec=eh;}else if(ef===1){ei=$subslice(c.img3.Cb,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));ej=c.img3.CStride;eb=ei;ec=ej;}else if(ef===2){ek=$subslice(c.img3.Cr,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));el=c.img3.CStride;eb=ek;ec=el;}else if(ef===3){em=$subslice(c.blackPix,($imul(8,((($imul(bl,c.blackStride))+bk>>0)))));en=c.blackStride;eb=em;ec=en;}else{return new M("too many components");}}eo=0;while(true){if(!(eo<8)){break;}ep=$imul(eo,8);eq=$imul(eo,ec);er=0;while(true){if(!(er<8)){break;}et=(es=ep+er>>0,((es<0||es>=b[0].length)?$throwRuntimeError("index out of range"):b[0][es]));if(et<-128){et=0;}else if(et>127){et=255;}else{et=et+(128)>>0;}(eu=eq+er>>0,((eu<0||eu>=eb.$length)?$throwRuntimeError("index out of range"):eb.$array[eb.$offset+eu]=(et<<24>>>24)));er=er+(1)>>0;}eo=eo+(1)>>0;}bz=bz+(1)>>0;$s=10;continue;case 11:bp=bp+(1)>>0;$s=8;continue;case 9:bf=bf+(1)>>0;if(c.ri>0&&((ev=bf%c.ri,ev===ev?ev:$throwRuntimeError("integer divide by zero"))===0)&&bf<($imul(au,aw))){$s=40;continue;}$s=41;continue;case 40:ew=c.readFull($subslice(new AV(c.tmp),0,2));$s=42;case 42:if($c){$c=false;ew=ew.$blk();}if(ew&&ew.$blk!==undefined){break s;}ex=ew;if(!($interfaceIsEqual(ex,$ifaceNil))){$s=43;continue;}$s=44;continue;case 43:return ex;case 44:if(!((c.tmp[0]===255))||!((c.tmp[1]===bg))){return new L("bad RST marker");}bg=bg+(1)<<24>>>24;if(bg===216){bg=208;}R.copy(c.bits,new R.ptr(0,0,0));BP.copy(bh,BP.zero());c.eobRun=0;case 41:bo=bo+(1)>>0;$s=6;continue;case 7:bn=bn+(1)>>0;$s=4;continue;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOS};}$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.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.d=d;$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.e=e;$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.el=el;$f.em=em;$f.en=en;$f.eo=eo;$f.ep=ep;$f.eq=eq;$f.er=er;$f.es=es;$f.et=et;$f.eu=eu;$f.ev=ev;$f.ew=ew;$f.ex=ex;$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.processSOS=function(a){return this.$val.processSOS(a);};S.ptr.prototype.refine=function(a,b,c,d,e){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,$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;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:f=this;if(c===0){$s=1;continue;}$s=2;continue;case 1:if(!((d===0))){$panic(new $String("unreachable"));}h=f.decodeBit();$s=3;case 3: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))){return j;}if(i){a.nilCheck,a[0]=((a.nilCheck,a[0])|(e));}return $ifaceNil;case 2:k=c;if(f.eobRun===0){$s=4;continue;}$s=5;continue;case 4:case 6:if(!(k<=d)){$s=7;continue;}l=0;n=f.decodeHuffman(b);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}q=o>>>4<<24>>>24;r=(o&15)>>>0;s=r;if(s===0){$s=9;continue;}if(s===1){$s=10;continue;}$s=11;continue;case 9:if(!((q===15))){$s=13;continue;}$s=14;continue;case 13:f.eobRun=((t=q,t<32?(1<>>16);if(!((q===0))){$s=15;continue;}$s=16;continue;case 15:v=f.decodeBits((q>>0));$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!($interfaceIsEqual(x,$ifaceNil))){return x;}f.eobRun=(f.eobRun|((w<<16>>>16)))>>>0;case 16:$s=7;continue s;case 14:$s=12;continue;case 10:l=e;z=f.decodeBit();$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!($interfaceIsEqual(ab,$ifaceNil))){return ab;}if(!aa){l=-l;}$s=12;continue;case 11:return new L("unexpected Huffman code");case 12:ad=f.refineNonZeroes(a,k,d,(q>>0),e);$s=19;case 19:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;k=ac[0];p=ac[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}if(k>d){return new L("too many coefficients");}if(!((l===0))){(ae=((k<0||k>=P.length)?$throwRuntimeError("index out of range"):P[k]),a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae]=l));}k=k+(1)>>0;$s=6;continue;case 7:case 5:if(f.eobRun>0){$s=20;continue;}$s=21;continue;case 20:f.eobRun=f.eobRun-(1)<<16>>>16;ag=f.refineNonZeroes(a,k,d,-1,e);$s=22;case 22:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:return ah;case 24:case 21:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refine};}$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.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.refine=function(a,b,c,d,e){return this.$val.refine(a,b,c,d,e);};S.ptr.prototype.refineNonZeroes=function(a,b,c,d,e){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:f=this;case 1:if(!(b<=c)){$s=2;continue;}g=((b<0||b>=P.length)?$throwRuntimeError("index out of range"):P[b]);if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))===0){$s=3;continue;}$s=4;continue;case 3:if(d===0){$s=2;continue;}d=d-(1)>>0;b=b+(1)>>0;$s=1;continue;case 4:i=f.decodeBit();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[0,k];}if(!j){b=b+(1)>>0;$s=1;continue;}if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))>=0){a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))+(e)>>0));}else{a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))-(e)>>0));}b=b+(1)>>0;$s=1;continue;case 2:return[b,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refineNonZeroes};}$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;};S.prototype.refineNonZeroes=function(a,b,c,d,e){return this.$val.refineNonZeroes(a,b,c,d,e);};$ptrType(AF).prototype.init=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=$clone(a,AD);b=this;c=0;d=a.value;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);if((f>>0)>c){c=(f>>0);}e++;}b.$set((g=$makeSlice(BQ,(c+1>>0)),$subslice(new AF(g.$array),g.$offset,g.$offset+g.$length)));h=0;i=0;j=h;k=i;l=0;while(true){if(!(l<16)){break;}m=((l+1>>0)>>>0)<<24>>>0;n=0;while(true){if(!(n<(o=a.count,((l<0||l>=o.length)?$throwRuntimeError("index out of range"):o[l])))){break;}(p=b.$get(),q=(r=a.value,((k<0||k>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+k])),((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((m|j)>>>0)));j=j+(1)>>>0;k=k+(1)>>0;n=n+(1)<<24>>>24;}j=(s=(1),s<32?(j<>>0;l=l+(1)>>0;}};AH=function(){var $ptr,a,b,c,d;a=AE;b=0;while(true){if(!(b<4)){break;}c=b;d=$clone(((b<0||b>=a.length)?$throwRuntimeError("index out of range"):a[b]),AD);$indexPtr(AG,c,BR).init(d);b++;}};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];M.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BY.methods=[{prop:"ensureNBits",name:"ensureNBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$error],false)},{prop:"receiveExtend",name:"receiveExtend",pkg:"image/jpeg",typ:$funcType([$Uint8],[$Int32,$error],false)},{prop:"processDHT",name:"processDHT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decodeHuffman",name:"decodeHuffman",pkg:"image/jpeg",typ:$funcType([BW],[$Uint8,$error],false)},{prop:"decodeBit",name:"decodeBit",pkg:"image/jpeg",typ:$funcType([],[$Bool,$error],false)},{prop:"decodeBits",name:"decodeBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$Uint32,$error],false)},{prop:"fill",name:"fill",pkg:"image/jpeg",typ:$funcType([],[$error],false)},{prop:"unreadByteStuffedByte",name:"unreadByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[],false)},{prop:"readByte",name:"readByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readByteStuffedByte",name:"readByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readFull",name:"readFull",pkg:"image/jpeg",typ:$funcType([AV],[$error],false)},{prop:"ignore",name:"ignore",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processSOF",name:"processSOF",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDQT",name:"processDQT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDRI",name:"processDRI",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp0Marker",name:"processApp0Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp14Marker",name:"processApp14Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decode",name:"decode",pkg:"image/jpeg",typ:$funcType([A.Reader,$Bool],[B.Image,$error],false)},{prop:"applyBlack",name:"applyBlack",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"isRGB",name:"isRGB",pkg:"image/jpeg",typ:$funcType([],[$Bool],false)},{prop:"convertToRGB",name:"convertToRGB",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"makeImg",name:"makeImg",pkg:"image/jpeg",typ:$funcType([$Int,$Int],[],false)},{prop:"processSOS",name:"processSOS",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"refine",name:"refine",pkg:"image/jpeg",typ:$funcType([BX,BW,$Int32,$Int32,$Int32],[$error],false)},{prop:"refineNonZeroes",name:"refineNonZeroes",pkg:"image/jpeg",typ:$funcType([BX,$Int32,$Int32,$Int32,$Int32],[$Int32,$error],false)}];BR.methods=[{prop:"init",name:"init",pkg:"image/jpeg",typ:$funcType([AD],[],false)}];H.init([{prop:"nCodes",name:"nCodes",pkg:"image/jpeg",typ:$Int32,tag:""},{prop:"lut",name:"lut",pkg:"image/jpeg",typ:BF,tag:""},{prop:"vals",name:"vals",pkg:"image/jpeg",typ:BG,tag:""},{prop:"minCodes",name:"minCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"maxCodes",name:"maxCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"valsIndices",name:"valsIndices",pkg:"image/jpeg",typ:AW,tag:""}]);J.init($Int32,64);O.init([{prop:"h",name:"h",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"v",name:"v",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"c",name:"c",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"tq",name:"tq",pkg:"image/jpeg",typ:$Uint8,tag:""}]);R.init([{prop:"a",name:"a",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"m",name:"m",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"n",name:"n",pkg:"image/jpeg",typ:$Int32,tag:""}]);S.init([{prop:"r",name:"r",pkg:"image/jpeg",typ:A.Reader,tag:""},{prop:"bits",name:"bits",pkg:"image/jpeg",typ:R,tag:""},{prop:"bytes",name:"bytes",pkg:"image/jpeg",typ:BB,tag:""},{prop:"width",name:"width",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"img1",name:"img1",pkg:"image/jpeg",typ:AX,tag:""},{prop:"img3",name:"img3",pkg:"image/jpeg",typ:AY,tag:""},{prop:"blackPix",name:"blackPix",pkg:"image/jpeg",typ:AV,tag:""},{prop:"blackStride",name:"blackStride",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"ri",name:"ri",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nComp",name:"nComp",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"progressive",name:"progressive",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"jfif",name:"jfif",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransformValid",name:"adobeTransformValid",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransform",name:"adobeTransform",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"eobRun",name:"eobRun",pkg:"image/jpeg",typ:$Uint16,tag:""},{prop:"comp",name:"comp",pkg:"image/jpeg",typ:BC,tag:""},{prop:"progCoeffs",name:"progCoeffs",pkg:"image/jpeg",typ:BE,tag:""},{prop:"huff",name:"huff",pkg:"image/jpeg",typ:BI,tag:""},{prop:"quant",name:"quant",pkg:"image/jpeg",typ:BK,tag:""},{prop:"tmp",name:"tmp",pkg:"image/jpeg",typ:BL,tag:""}]);AD.init([{prop:"count",name:"count",pkg:"image/jpeg",typ:AU,tag:""},{prop:"value",name:"value",pkg:"image/jpeg",typ:AV,tag:""}]);AF.init($Uint32);$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=F.$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=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AG=AS.zero();I="short Huffman data";N="luma/chroma subsampling ratio";P=$toNativeArray($kindInt,[0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);T="missing 0xff00 sequence";AE=$toNativeArray($kindStruct,[new AD.ptr($toNativeArray($kindUint8,[0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125]),new AV([1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250])),new AD.ptr($toNativeArray($kindUint8,[0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119]),new AV([0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250]))]);W();AH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/mosaic"]=(function(){var $pkg={},$init,A,B,C,D,I,J,K,L,M,N,O,E,F,G,H;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/jpeg"];D=$packages["log"];I=$ptrType(A.Image);J=$arrayType($Float64,3);K=$arrayType(J,2);L=$arrayType($Float64,5);M=$arrayType(L,4);N=$sliceType(A.ImagePart);O=$sliceType($emptyInterface);G=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 A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,K.zero()),new A.ColorM.ptr(false,M.zero()),N.nil);b.GeoM.Scale(0.0625,0.0625);c=F.DrawImage(E,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;b=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,K.zero()),new A.ColorM.ptr(false,M.zero()),N.nil);b.GeoM.Scale(16,16);d=a.DrawImage(F,b);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;return $ifaceNil;}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};H=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=$ifaceNil;c=B.NewImageFromFile("images/gophers.jpg",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;E=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new O([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:d=E.Size();e=d[0];f=d[1];j=A.NewImage((h=e/16,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=f/16,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")),0);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}g=j;F=g[0];a=g[1];if(!($interfaceIsEqual(a,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=D.Fatal(new O([a]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:k=A.Run(G,320,240,2,"Mosaic (Ebiten Demo)");$s=9;case 9:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=D.Fatal(new O([l]));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$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;};$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=I.nil;F=I.nil;if($pkg===$mainPkg){$s=5;continue;}$s=6;continue;case 5:$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 6:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/mosaic"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=mosaic.js.map diff --git a/_docs/public/examples/mosaic.js.map b/_docs/public/examples/mosaic.js.map deleted file mode 100644 index 870af8e1e..000000000 --- a/_docs/public/examples/mosaic.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mosaic.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/image/jpeg/huffman.go","/image/jpeg/idct.go","/image/jpeg/reader.go","/image/jpeg/scan.go","/image/jpeg/writer.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/mosaic/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;mfCnQA,8B,8C,WA0CC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;;+QCU/B,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;i1GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;sQC1BA,+D,gDAIA,kC,gDAQA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,qE,mBC6nBC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;smFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,yBCQA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;kZ,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCzPzB,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;+0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAgBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,wJAIa,cACb,0CACA,IACA,UACC,oMACA,IACD,gBACC,oMACA,oMACD,gBACC,IACA,oMACD,gBACC,oMACA,IACD,gBACC,0MACA,gN,MAGA,IACA,I,CAED,2CACA,2CACA,2CACA,qBACA,yG,msZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eCzJoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;6hDCrEK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;i/ICpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,2gBAoBI,YACA,eACJ,uQACK,SACA,SACJ,wD,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,0O,yCAGA,oB,CAEE,iK,OACF,iB,OAED,uDACA,uB,oYAUI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,g1BCgBA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;qgB,4F,4F,4F,4F,4F,4F,4F,4F,4F;4Q;+5CCxvBK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;2vBCpcA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,qY,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G;yxIChBK,OACL,OACC,uH,sC,+BAGE,gB,CAED,S,CAED,yCACA,yB,iBAEC,a,MAEA,0C,C,gBAGA,c,C,qBAGF,iB,ygBAKK,OACL,iD,OACI,0K,OACF,Y,O,OAGF,8BACA,2CACA,yBACA,sE,gBAEC,4C,CAED,oB,69BAKK,OACL,iC,SAEE,qC,CAEE,8L,OACF,S,OAED,wB,QAEC,6B,CAED,oB,6BAEC,6B,CAED,uJAKA,WACI,YACJ,2CACC,8JACA,0F,K,iBAGA,8C,C,iBAGA,mD,CAED,+B,QAEC,qC,CAEE,qM,OACF,S,OAID,gDACC,+E,KAEG,gBACA,kCACH,+BACI,qGAMH,qDACA,wIACI,8EACH,qGADgC,mB,CAGjC,YACA,YAZiC,a,CAFF,Y,CAmB7B,sBACJ,2H,WAEE,2FACA,2FACA,8F,MAEA,2FACA,0GACA,8FACA,cACA,c,CAED,gC,M,qBAGF,iB,i+BAKK,O,iBAEJ,+C,CAGD,4C,OACI,qK,O,uEAED,Y,C,iCAMA,0B,CAED,c,O,OAGC,mJ,eACF,6BACA,8BACA,2CACA,8C,CAGF,OACK,kDACH,+C,OACI,yK,QACF,Y,Q,Q,uCAID,Q,CAED,yBACA,2C,yFAEC,mR,CAED,2BAd8C,W,qBAgB/C,oC,6kBAGK,OACL,8C,OACI,qK,OACF,gB,O,OAGF,qCACA,yBACA,2CACA,oB,8dAGK,OACL,4C,OACI,qK,OACF,Y,O,OAGF,sDACA,sDACA,yBACA,iDACA,oB,2bC3KI,kCACH,a,irBAIC,mGACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FAbiB,W,S,CAkBlB,+GACA,oGACA,6FACA,kGACA,kGACA,kGACA,kGACA,kGAGA,2BACA,0BACA,0BACA,4BACA,yBACA,0BAGA,UACA,WACA,0BACA,uBACA,yBACA,WACA,cACA,YACA,cAGA,YACA,cACA,UACA,WACA,6CACA,8CAGA,iHACA,iHACA,iHACA,kHACA,kHACA,iHACA,iHACA,iHA9DkB,W,CAkEf,oCAMH,qHACA,0GACA,oGACA,oGACA,mGACA,oGACA,oGACA,oGAGA,kCACA,oCACA,oCACA,mCACA,mCACA,oCAGA,YACA,cACA,mCACA,oCACA,oCACA,YACA,cACA,YACA,cAGA,YACA,cACA,YACA,cACA,8CACA,8CAGA,oHACA,oHACA,qHACA,qHACA,qHACA,qHACA,qHACA,qHAlDkB,a,C,0CCrHd,YAAgC,gC,qHAKhC,YAAqC,qC,gXAsHrC,O,+BAEJ,iE,C,gBAKA,mHACA,mHACA,gC,CAGD,kJACA,2B,QAEC,Y,CAED,S,0SAQK,OACL,6CACA,sB,gBAEC,2CACA,yBACA,2C,C,wYAMI,OACL,mDACI,6J,O,4B,O,qBAIJ,iGACA,2BACA,sB,oC,osBASK,O,gCAGJ,iGACA,2BACA,sB,iB,4B,C,4G,mC,CAOA,2BACA,sB,sC,CAID,sBAEA,4G,sC,4B,CAIA,sB,iB,oC,CAKA,4G,sC,4B,CAIA,sB,e,mC,C,wC,2nBASK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,mEACA,iBACA,2B,kBAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,8bAIK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,yB,QAEC,I,CAED,2BACA,W,UAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,isBAIK,O,qBAEJ,qC,CAED,IACA,UACC,UACD,iBACC,UACD,iBACC,U,MAEA,qC,CAEE,6L,OACF,S,O,sBAIA,0B,CAED,gDACA,+C,iCAEC,qC,CAGG,wCACH,iLAGI,kC,sKAEF,8C,CAFiB,W,CAMnB,kL,uFAEC,6B,CAGD,mGACA,oD,uBAEC,8C,C,qBAGA,gB,CAED,UACA,UAYC,gBAED,gBAQC,KACA,W,UAKE,gB,CAEF,iB,6KAEE,gB,CAEF,iB,+CAEE,gB,C,CAIH,gBAUC,KACA,W,6BAEE,gB,CAEF,yB,gBAEE,gB,CAEF,iB,+CAEE,gB,C,C,CAKH,qFACA,qFA3FwB,W,CA6FzB,iB,k3BAIK,OAEL,iCACC,WACA,4G,sCAEC,S,CAED,a,QAEC,6B,CAED,iFAGA,O,SAEE,gB,CAED,YACG,+L,OACF,S,QAED,wHACC,wO,K,cAEF,O,UAEE,gB,CAED,aACG,mM,QACF,S,QAED,wHACC,+W,K,qBArBD,6B,O,qB,eA0BD,qC,CAED,iB,6mBAIK,O,eAEJ,qC,CAEE,6L,OACF,S,OAED,4CACA,iB,idAGK,OACL,qC,OACC,8G,OAEE,6L,OACF,S,OAED,WAEA,0FAEA,qC,OACC,kH,OAED,iB,qfAGK,OACL,sC,OACC,8G,OAEE,8L,OACF,S,OAED,Y,2FAGC,2BACA,2B,CAGD,qC,OACC,kH,OAED,iB,kqBAIK,OACL,MAGG,6L,OACF,oB,O,6CAGA,8C,CAID,OACC,0H,sCAEC,oB,CAED,iDAqBC,kBACA,mH,sCAEC,oB,C,qBAGF,WACA,yC,QAEC,c,QAED,uCAGC,8G,sCAEC,oB,C,uB,YAID,c,CAED,kD,QAOC,c,QAKE,iM,QACF,oB,QAED,gD,QAEC,gD,CAGD,yOACA,QACC,sBACA,mG,cAEC,oB,C,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,Q,MAEE,4B,CAED,mG,eACD,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,0G,eACD,QACC,2G,uBAEA,uF,QACC,+F,e,QAEA,0B,uBAEA,0B,Q,Q,sCAID,oB,C,qB,uBAID,yB,C,uB,2BAIC,sB,oBAEA,wB,CAED,yB,CAED,8C,igBAUK,O,2BAEJ,mG,C,8BAYA,sCACA,eACA,8BACI,0DACC,+DACH,gRADoD,2BADH,kCAKnD,4E,CAYD,sCACA,eAEA,mLASA,0HACC,6MACI,iEACH,iB,OAEC,iG,CAEG,uEACH,iB,OAEC,iG,CAED,yPALoD,mCALH,0C,KAcpD,oB,gHAGK,O,WAEJ,a,C,kDAKA,Y,CAED,iE,wKAGK,OACL,2GACA,sCACA,eACI,8CACH,yBACA,4BACA,4BACI,+DACH,qOACA,yTACA,6TACA,sIAJsD,W,CAJf,W,CAWzC,oB,iRAKI,2KACJ,oH,oWAMI,2KACD,4K,OACF,0C,OAED,UACA,UACC,iEAKD,gBACC,e,cAEC,c,CAED,uDAKD,gBACC,iE,CAMD,oE,+KAIA,wC,mFCrxBK,O,gBAEJ,+CACA,gEACA,O,CAGD,cACA,cACA,iGACA,iGACI,IACJ,cACA,WACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,I,MAEA,mC,CAED,wEACA,gE,gBAGC,oCACA,mFACA,oC,C,++DAKI,O,gBAEJ,mC,C,4GAGA,qC,CAEE,6L,OACF,S,OAED,gB,iCAEC,kE,CAEG,YAKJ,IACI,kCACH,mGACA,KACA,qL,YAEE,I,C,K,QAID,2C,CAED,0FAMI,kC,gKAEF,4C,CAFiB,W,CAKnB,kLAEA,oL,4EAEC,6B,CAED,gL,4EAEC,6B,CA9BqB,W,C,oBAoCtB,iD,CAmBD,2C,kBAEC,gHACA,gHACA,gIACA,4H,2CAEC,8C,C,4BAGA,wE,C,sCAGA,oD,C,CAKF,0CACA,8IACA,+I,qCAEC,iB,C,kBAGI,oCACH,mF,uGAEC,sT,CAHqB,a,C,CAQxB,gCACA,wBAGC,eACA,aAGA,sBACA,KAEG,wCACC,wCACC,uCACH,mFACA,yFACA,yFACA,kLACI,sDA0BH,8C,QACC,wFACA,kH,uBAEA,gBACA,sEACA,gGACA,a,oDAjCqB,a,e,C,Q,kBAyCrB,2O,MAEA,uB,CAGD,+C,QACI,mX,QACF,U,Q,uBAGD,MACA,0C,QACC,aAEA,gS,uCAEC,U,C,UAGA,uC,CAED,gI,uCAEC,U,CAED,0JACA,2G,QAGD,sD,QACC,+B,uBAGA,sKACA,sCACC,gI,uCAEC,U,CAED,mBACA,eACA,+C,QACC,mB,UAEC,e,CAED,gI,uCAEC,U,CAED,qL,uBAEA,gD,QACC,4CACA,+C,QACC,kI,uCAEC,U,CAED,wC,QAED,+BACA,e,QAED,c,QA9BmB,a,uB,Q,Q,kB,8BAuCrB,2OAlHoB,a,e,C,CA6HlB,qCACH,+YAD8B,a,CAG/B,QACA,2B,gBAEC,qG,MAEA,MACA,WACC,qGACD,iBACC,sGACD,iBACC,sGACD,iBACC,qG,MAEA,oC,C,CAIE,oCACH,eACA,gBACI,oCACH,6F,YAEC,K,iBAEA,O,MAEA,e,CAED,uHATkB,a,CAHD,a,CAnJG,a,uBALD,a,qBAyKvB,aACA,yI,QAGI,yM,QACF,U,Q,4CAGA,+B,CAED,mB,aAEC,O,CAGD,gCAEA,sBAEA,W,QA7LqB,a,qBADD,a,qBAmMvB,iB,m/DAKK,OAEL,uC,O,eAEE,mC,CAED,6G,sCAEC,S,C,MAGA,wC,CAED,iB,OAID,IACA,8C,OAEC,kCACC,IACA,kH,sCAEC,S,CAED,iBACA,aAEA,sEACA,OACC,+C,QACC,wCACA,8C,QACC,sH,sCAEC,S,CAED,uC,QAED,gB,Q,eAEF,QACC,IACA,iH,uCAEC,U,C,QAGA,K,C,uBAGD,wC,QAGD,4I,sCAEC,S,C,QAGA,sC,C,eAGA,2J,CA3CmB,W,qB,OA+CtB,8C,QACC,+BACG,uM,QACF,U,Q,QAGF,iB,0uBAKK,OACL,kCACC,qEACA,qH,O,UAEE,c,CAED,WANmB,W,c,OASpB,6G,sCAEC,Y,C,OAXmB,W,c,C,uFAiBnB,uK,MAEA,uK,CAnBmB,W,qBAsBrB,oB,oXClSyB,eAApB,OACL,IACA,2I,aAEE,S,C,KAGF,8FACA,gBACI,mCACH,yBACI,+GACH,iNACA,YACA,WAHkC,iB,CAKnC,4BAP6B,W,C,iCAe9B,2HACC,2B,K,8iK,4F,4F,4F,4F,4F,yG,uB,kC,mN,4B,iiD,I;srBCjJD,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;6nBCxQA,8GACA,4BACA,gGACA,8GACA,oBACA,gGACA,iB,yYAII,YACJ,0IACA,mE,OACC,sG,OAED,yBACA,yRACA,mE,OACC,sG,OAEE,gM,QACF,wG,Q,qW,4F,4F,4F,4G,iD,O,sF,mB"} diff --git a/_docs/public/examples/paint.js b/_docs/public/examples/paint.js deleted file mode 100644 index a1a03fcdc..000000000 --- a/_docs/public/examples/paint.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,H,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;H=function(e,f){var $ptr,e,f;return $parseInt(e.lastIndexOf(f))>>0;};$pkg.LastIndex=H;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AO,AQ;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,F,G,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);F=function(){var $ptr,a,b,c,d;a=0;b=0;c=L.cursorX;d=L.cursorY;a=c;b=d;return[a,b];};$pkg.CursorPosition=F;G=function(a){var $ptr,a,b;return(b=L.mouseButtonPressed,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a]));};$pkg.IsMouseButtonPressed=G;M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AG,AH,AM,AN,AQ,AS,AT,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AG=function(a,b,c){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];e=[e];e[0]=BL.nil;d[0]=$ifaceNil;$r=AB((function(a,b,c,d,e){return function $b(f){var $ptr,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;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=BP.nil;h=BO.nil;i=D.NewTexture(f,a[0],b[0],AA(f,c[0]));g=i[0];d[0]=i[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(f,g);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;h=j[0];d[0]=j[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}e[0]=new AE.ptr(h,g,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(d[0],$ifaceNil))){return[BL.nil,d[0]];}f=e[0].Clear();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return[BL.nil,g];case 4:I.SetFinalizer(e[0],new BT($methodExpr(BL,"Dispose")));return[e[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AG};}$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.NewImage=AG;AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AS=function(){var $ptr,a,b,c;a=0;b=0;c=B.CursorPosition();a=c[0];b=c[1];return[a,b];};$pkg.CursorPosition=AS;AT=function(a){var $ptr,a;return B.IsMouseButtonPressed((a>>0));};$pkg.IsMouseButtonPressed=AT;BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J,L,M,AA,AB,AC,AD,N,T,K,O,P,Q;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$packages["time"];L=$pkg.asset=$newType(0,$kindStruct,"assets.asset","asset","github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",function(bytes_,info_){this.$val=this;if(arguments.length===0){this.bytes=AA.nil;this.info=$ifaceNil;return;}this.bytes=bytes_;this.info=info_;});M=$pkg.bindata_file_info=$newType(0,$kindStruct,"assets.bindata_file_info","bindata_file_info","github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",function(name_,size_,mode_,modTime_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new J.Time.ptr(new $Int64(0,0),0,AC.nil);return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;});AA=$sliceType($Uint8);AB=$ptrType(L);AC=$ptrType(J.Location);AD=$sliceType($emptyInterface);K=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:b=Q("text.png");$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;c=a[0];d=a[1];if(!($interfaceIsEqual(d,$ifaceNil))){return[$ifaceNil,d];}f=B.Decode(A.NewBuffer(c));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[2];if(!($interfaceIsEqual(d,$ifaceNil))){return[$ifaceNil,d];}return[g,$ifaceNil];}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.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.TextImage=K;M.ptr.prototype.Name=function(){var $ptr,a;a=$clone(this,M);return a.name;};M.prototype.Name=function(){return this.$val.Name();};M.ptr.prototype.Size=function(){var $ptr,a;a=$clone(this,M);return a.size;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.Mode=function(){var $ptr,a;a=$clone(this,M);return a.mode;};M.prototype.Mode=function(){return this.$val.Mode();};M.ptr.prototype.ModTime=function(){var $ptr,a;a=$clone(this,M);return a.modTime;};M.prototype.ModTime=function(){return this.$val.ModTime();};M.ptr.prototype.IsDir=function(){var $ptr,a;a=$clone(this,M);return false;};M.prototype.IsDir=function(){return this.$val.IsDir();};M.ptr.prototype.Sys=function(){var $ptr,a;a=$clone(this,M);return $ifaceNil;};M.prototype.Sys=function(){return this.$val.Sys();};O=function(){var $ptr;return[N,$ifaceNil];};P=function(){var $ptr,a,b,c,d,e;a=O();b=a[0];c=a[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[AB.nil,c];}d=new M.ptr("text.png",new $Int64(0,2058),420,$clone(J.Unix(new $Int64(0,1420820510),new $Int64(0,0)),J.Time));e=new L.ptr(b,new d.constructor.elem(d));return[e,$ifaceNil];};Q=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=I.Replace(a,"\\","/",-1);c=(d=T[$String.keyFor(b)],d!==undefined?[d.v,true]:[$throwNilPointerError,false]);e=c[0];f=c[1];if(f){$s=1;continue;}$s=2;continue;case 1:h=e();$s=3;case 3: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=4;continue;}$s=5;continue;case 4:k=D.Errorf("Asset %s can't read by error: %v",new AD([new $String(a),j]));$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=7;case 7:return[AA.nil,k];case 5:return[i.bytes,$ifaceNil];case 2:l=D.Errorf("Asset %s not found",new AD([new $String(a)]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=9;case 9:return[AA.nil,l];}return;}if($f===undefined){$f={$blk:Q};}$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.Asset=Q;M.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[F.FileMode],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[J.Time],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];L.init([{prop:"bytes",name:"bytes",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:AA,tag:""},{prop:"info",name:"info",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:F.FileInfo,tag:""}]);M.init([{prop:"name",name:"name",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:$String,tag:""},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:F.FileMode,tag:""},{prop:"modTime",name:"modTime",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:J.Time,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;}$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;}N=new AA($stringToBytes("\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\xC0\x00\x00\x00\x80\b\x03\x00\x00\x00jZ\x96Y\x00\x00\x00\x06PLTE\x00\x00\x00\xFF\xFF\xFF\xA5\xD9\x9F\xDD\x00\x00\x00\x01tRNS\x00@\xE6\xD8f\x00\x00\x07\xB2IDATx\x9C\xEC\x1C\x89v#!\b\xF2\xE6\xFF\x7F\x99MT\xE4\xF4\x984m\x8E\r\xBB\xB5\x13\x83\x1C\xE2\x01\x8C\xF6\x02o\x0E_\x05n\x80\x83\x9AX?j\x1B\xF1w\xDA\xDE\xE0\x02x\x05iu\xFD\x87\xF5\xA1\xD4\xB7\xB2}\x8B\x86<\xB6\xF2\xB9`,\x80t\xFB\xD7>\xD0\x15J)\xDF\x92\xD5\xE0/`\xD0G\xD2\x97\x87\xAE.\xF2\xA3\xB2g\x11\x9E|c\xAA\xA8\xFB\x12D\x1A\xBB\x90\xF0\xBA}\xB8\xFEp\xDDa\xEB\xD9\x06\xA8x2\xEAU5E\xA8Yc\xA9\xC7\xBD\xA2k\xEAYoq\r+\x807\xE4f\x01C\xA2\x97T\xDB\xE0\xED\x7F\xED\x17~\xDA\x91\xC40\xDD\x05\x19\xCEM\xACR\xA2\xEBZ3Yqcp\x8F\xD6\x9CX\xF3\xE3U\b\xD5\x07\x94\xAA\xB6\xEE\x94\xB2Y\x80\xCA\x98Q\x16P\x1Asi\xD8R\xA7O\x9Dy\xAF#%\x11\x05a)\xD3\x00\x9Am\x1B\xF4QK\xC2\xAD\xE3P\xAB&e\x01QR\x9E\x9D\xEA)\xD7\xB8r\x9F]\xCBG\xAD\x10\x94\x00\x00v\xD5V\xE8}\x12\xB7\xE9.\xEBh\xEDJ\xB7\"=\x02N\xCD\x07bTLF\xC0\r\x0E[\xAD\xF7\x81V\xDE*\xC8\xB1\xFF\x912\xFB\x8D\x93\x01\xCC\xCA\xF4\xE5#\xD9\x07\x1C\x03Wa\xEC\xF3\x03\xD8\xB1\x03\xD9\x92T}\xDEpo\x15\x9A\x8B\xF4\xE09\xF0\xF9\xF0u\xA7\x9F\r\x1F\xA6\xC0b\x0E\x87\xCD\xE5\x05\xC0x\xA3\xFD\xB1|\x90\xC2:mg\xDC\xE9\xB2b\x83P\xEB{#U\xA2\xC93\xB2+\x12\x19\xF4=\xB6\xFE\xC6\xB8A\xA1\x0E\xB5\xD8\xBD\x13/%:^+CH\xFB\xC4EAcS\b\x02DbN\xD8\xDBO2\x07\x9AWz\xF5\xED\x8A{\xE7\tu\x1F\x1D\x9C\xDF\x94\xC9O\xFEA>\x1A\x93\xE7h\xAE\xB3\xE4K\xE5\xF3[\x05\xA8nr\xA47\xBD\x12'`\x1A\x9B\x11\xAE\x03\x1AP\xA6N\xE4T\x8EqB\xD3\x18\x84*bA\xA58\xC4P?*\xA2\\\xA0G4\xDE9\x8A\x86\xAF\xC6\xB9\x18t\x18\xBBB\x9DEU\xA5\xCAS]\xF6vQ\\{\x1A\x7F\xB8\"\xAB\xE3Bo\x11R\x06\xD0I\xC9\xA3g6\xC5m\xD6.g\xE2,\xA08\x1A\xFD\x17\x19\x14$L\xC2\xC8z\xEAG\xEA\xB1\x07\xA8\xAB\x90r\x13&A\xA0\xCE$\xDB\x90\xAE\x07\x8F\xA0\x03\xC3QH\xA9\xEA%P\xB4!e\x8FQ;\x02\xDA\xF5\xC2\xCD\xB5\x03\xCC\xB7\f\xA6\xD7\xCD\x1B\x80\xC9\xBB\xB7\xA4y\xAC\xDF\fh\x14i\xC3=0;\xA4:\x9D\xCC;\x06\xDC>\x00(47[l\xA0\r&q\xA6\xF3x\xB9\x9Aj\xD0]\xF4H\xBB\xBFt)\x04\xF4\x04\xA0\xED\x80\xE40\xC2\xA9x@N\x9B\x89qMrCS\xA7\xEC\x8DOkK\xBE-\xD7c\xE5\xE2O\x19\xD6W\xA3\xD4\xE7\xC9\xE3\x96g\x9D\x8D1\x95\xCBV\x9B\xA8c^\x93\x9D\xF8$U\x9AWd\x8D\xCED\xE8\xE7H\x7F\x06|\x807\xFA\xE6\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0\xBF(\xC0I\xED;\x00Cv\x01\xCD\x99\xCAGq49x\xD4\xB5\xEA\xA7f*\xFB\xDDK9\xB4\xEDr;\xFD~\xA6dA\x01\xD43\xBA6\xE6\xC4\xB5\x88`\x9A\x9B\xD7\x03\xC3\x1E@\xC3'(\x00^\xB1(\v8l\xB4(ir\x07\xD1\xBF\xBF7)`e\x8C\xBC\xC3,%\x937\x06}\x8A\x17#\xA6\x9C\xB2N\xE8\xF0\xB3b\x99\xF3\x8F\n\x18\x9Bk\xEEc2,\x88\x98Y\xCB\x16\xC4L\x944\xC4\xA2\x88\x88\xD1\xC0L\x17\xE3\x9D\r\xDD\xED\xDE\xE0\xFACH\xEE\xF2\xAB\x07hw4P]\xA6\xF4I\\N\xC1\xF6\xDCv\xA9H\xD2\xA4\xFC*\x038\x1F\xEA\xB9\xB2\xDA\xA1Yc\xAB\xEF\xF3\x94\x8B\x94\x18R\xDC\xAE\xBB3\xCB\xC5\x13\xE0\x00\xA6\x1EC\r\xA4\r\xE2\xC1\xB70z]?\xE1\xA7/\xB3\x94\xA2-\x8E\xE0\xD7\x9E\xD8\xC5\x10f\x84\xFD8Z'\x02f\xBE\fxr\xDD\x1C\xD0\x17\x8F\xDA\xCEZ@N|R;\x1B\xA6\xE9P j\xDA\r\xBF\xE5\x8A\xCC\b\xE1\xFD\x80g\x04\xEA\xC4h}\x1F\xC2\xB7^\x16g\x8D\x12\x01~\xE1\xBCLF\xF1\xF1\\~\x11\x12a\xDFJ\xFE\x07\xC0\xFF\xE2\x8D\xBE.|\x82\x02z\x8D\xE7+P\xE8\xF6?\r\x11\xDF\xF8z\xA1\x1E\x00\xFC^;\xE0\xA59\f\xA9a\xB2c\xEB\x82\xCF:\x80\xF2h\x93\xFB_\xDA/C\x98\xD4\xB3\x17\x97\xB7\xC5L\xD5)\x97\xFDM\x12@\xB3\xB9\xA3\xA9\xA6p\x0E}\x85\xEF\xFE8\x8C>'\x1EJ\xE7:\xF6\x9B\x17\xA1\x04\xCC\x0E\xEC\xF4c8\xBC\xC3\xE78\br7\xA48:\xF6\x18\x8E/A=\xAF\x0F<\xE5\x1EVR\xAAc\xF3\xE6\b}\xD7`!\xD6\x96O\x18\xE0\xD2<\xBBEy\xBF\x1B\x11or\x0Ea\xC7\xA75\xD7\xA5o\xF7\xB4\xF7\x8E\x9C\x91u[\xC7Ce\xDCtC\x83}\v \x1F#\xB9\x0E\xA1\x1As\xCDK+\xD1\xA0\\\xC1R\x83vNeE\xC5\xB9\xC9\xC7dVI\xA9\x99\xFC\x1A4\xC9N\xB2\xD8=\xB5X\xFE0\x94\x1C\xDFK\xCB\x16\xF6\xDA\x92#\xEC\"\"\xDA\xF3H\xB6d\x1C\\\xE2t\x99\xCE\x9Eh\xF9\vOw\x9F\xC7yi^\xCCS\x7F1q\xEE\x85O\xF0F\xDF\x1B>A\x81_\x8E\x07\x9As|&\x1E\x98q\xD1\x8E\xB7EjE\x16\x0Fd\xB4w\xE3\x01h\xA9\xDB\xEDx`\xC1\x05!*0\x85\x9F&\x83\xC2\xAB\x8B\x19\xEE\x83\xF1\x1E\x05\xDB\xFCp\xB3\x81\xFE\xFEX;B\xE9\x1F\x8F\xCA\xCA\x9A\xF9\x8B%\x80\xB9Q0\xF6g\xA9I\xE7\xEF\x15\xF8\x12L\x00\xD45\x9A\x95\x12V\x8E\xCAqK\x80\xC9\x8D\x02]r\xCA\x16\x97\x98\xAA<6\xA4W3\x99\xC6\x98s\xD8\xF0\xBA$\xFC<3\xC6\x8F\xD4\x85t\xA5\xF1\xD3\xEF\x8D\x076\xE0\x1Eg\xFD\xE4%\xA0i\x02\xE01\xC0\xA4RK\xFBk\x02<\x94r\xFF\xBE\x97\x9B\x93x\x9DqXLb\x11\x0E\xB0\xFD\x815_\x02\x9C\xBD\xB3n:\xE7dg\xDE\x03s\x1Ez\xD7\xC3%\xF69\xDA\x7F\x03\xA8\xFF\xBC\xDEG\xDCP\xFE\x17\x00\x00\xFF\xFF!o0\xC6\x16:4\xA9\x00\x00\x00\x00IEND\xAEB`\x82"));T=$makeMap($String.keyFor,[{k:"text.png",v:P}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,P,Q,Y,Z,AA,AB,AC,AD,AE,AF,AO,R,U,S,V;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];P=$pkg.debugPrintImageParts=$newType(8,$kindString,"ebitenutil.debugPrintImageParts","debugPrintImageParts","github.com/hajimehoshi/ebiten/ebitenutil",null);Q=$pkg.debugPrintState=$newType(0,$kindStruct,"ebitenutil.debugPrintState","debugPrintState","github.com/hajimehoshi/ebiten/ebitenutil",function(textImage_,debugPrintRenderTarget_){this.$val=this;if(arguments.length===0){this.textImage=Y.nil;this.debugPrintRenderTarget=Y.nil;return;}this.textImage=textImage_;this.debugPrintRenderTarget=debugPrintRenderTarget_;});Y=$ptrType(A.Image);Z=$arrayType($Float64,3);AA=$arrayType(Z,2);AB=$arrayType($Float64,5);AC=$arrayType(AB,4);AD=$sliceType(A.ImagePart);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AO=$ptrType(Q);P.prototype.Len=function(){var $ptr,a;a=this.$val;return a.length;};$ptrType(P).prototype.Len=function(){return new P(this.$get()).Len();};P.prototype.Dst=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=0;c=0;d=0;e=0;f=this.$val;g=6;h=16;i=g;j=h;k=(a-E.LastIndex(f.substring(0,a),"\n")>>0)-1>>0;l=E.Count(f.substring(0,a),"\n");k=$imul(k,(i));l=$imul(l,(j));if(k<0){m=0;n=0;o=0;p=0;b=m;c=n;d=o;e=p;return[b,c,d,e];}q=k;r=l;s=k+i>>0;t=l+j>>0;b=q;c=r;d=s;e=t;return[b,c,d,e];};$ptrType(P).prototype.Dst=function(a){return new P(this.$get()).Dst(a);};P.prototype.Src=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;b=0;c=0;d=0;e=0;f=this.$val;g=6;h=16;i=g;j=h;k=(f.charCodeAt(a)>>0);if(k===10){l=0;m=0;n=0;o=0;b=l;c=m;d=n;e=o;return[b,c,d,e];}q=$imul(((p=k%32,p===p?p:$throwRuntimeError("integer divide by zero"))),i);s=$imul(((r=k/32,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))),j);t=q;u=s;v=q+i>>0;w=s+j>>0;b=t;c=u;d=v;e=w;return[b,c,d,e];};$ptrType(P).prototype.Src=function(a){return new P(this.$get()).Src(a);};S=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=R.DebugPrint(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DebugPrint=S;Q.ptr.prototype.drawText=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,$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:f=this;h=e.RGBA();$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];k=g[2];l=g[3];m=i/65535;n=j/65535;o=k/65535;p=l/65535;if(0>0),d);q.ColorM.Scale(m,n,o,p);r=a.DrawImage(f.textImage,q);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.drawText};}$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;};Q.prototype.drawText=function(a,b,c,d,e){return this.$val.drawText(a,b,c,d,e);};Q.ptr.prototype.DebugPrint=function(a,b){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:c=this;if(c.textImage===Y.nil){$s=1;continue;}$s=2;continue;case 1:e=B.TextImage();$s=3;case 3: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))){return g;}i=A.NewImageFromImage(f,0);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.textImage=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return g;}case 2:if(c.debugPrintRenderTarget===Y.nil){$s=5;continue;}$s=6;continue;case 5:j=256;k=256;l=j;m=k;n=$ifaceNil;p=A.NewImage(l,m,0);$s=7;case 7:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;c.debugPrintRenderTarget=o[0];n=o[1];if(!($interfaceIsEqual(n,$ifaceNil))){return n;}case 6:$r=c.drawText(a,b,1,1,(q=new C.NRGBA.ptr(0,0,0,128),new q.constructor.elem(q)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.drawText(a,b,0,0,(r=new C.NRGBA.ptr(255,255,255,255),new r.constructor.elem(r)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.DebugPrint};}$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;};Q.prototype.DebugPrint=function(a,b){return this.$val.DebugPrint(a,b);};V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};P.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];AO.methods=[{prop:"drawText",name:"drawText",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",typ:$funcType([Y,$String,$Int,$Int,C.Color],[],false)},{prop:"DebugPrint",name:"DebugPrint",pkg:"",typ:$funcType([Y,$String],[$error],false)}];Q.init([{prop:"textImage",name:"textImage",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",typ:Y,tag:""},{prop:"debugPrintRenderTarget",name:"debugPrintRenderTarget",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;R=new Q.ptr(Y.nil,Y.nil);V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/paint"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,M,N,O,P,Q,R,S,T,U,H,I,J,K,L;A=$packages["fmt"];B=$packages["github.com/hajimehoshi/ebiten"];C=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];D=$packages["image"];E=$packages["image/color"];F=$packages["log"];G=$packages["math"];M=$ptrType(B.Image);N=$arrayType($Float64,3);O=$arrayType(N,2);P=$arrayType($Float64,5);Q=$arrayType(P,4);R=$sliceType(B.ImagePart);S=$ptrType(B.DrawImageOptions);T=$sliceType($emptyInterface);U=$sliceType($Uint8);K=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:if(B.IsMouseButtonPressed(0)){H=H+(1)>>0;}b=B.CursorPosition();c=b[0];d=b[1];if(B.IsMouseButtonPressed(0)){$s=1;continue;}$s=2;continue;case 1:e=new B.DrawImageOptions.ptr($ifaceNil,new B.GeoM.ptr(false,O.zero()),new B.ColorM.ptr(false,Q.zero()),R.nil);e.GeoM.Translate(c,d);e.ColorM.Scale(1,0.25,0.25,1);g=6.283185307179586*(f=H%60,f===f?f:$throwRuntimeError("integer divide by zero"))/60;$r=e.ColorM.RotateHue(g);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=J.DrawImage(I,e);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return i;case 6:case 2:j=a.DrawImage(J,S.nil);$s=7;case 7:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=8;continue;}$s=9;continue;case 8:return k;case 9:l=a;m=A.Sprintf("(%d, %d)",new T([new $Int(c),new $Int(d)]));$s=10;case 10:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=C.DebugPrint(l,n);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return p;case 13:return $ifaceNil;}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.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;};L=function(){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:a=$ifaceNil;b=new U([64,192,192,64,192,255,255,192,192,255,255,192,64,192,192,64]);d=B.NewImageFromImage(new D.Alpha.ptr(b,4,$clone(D.Rect(0,0,4,4),D.Rectangle)),0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;I=c[0];a=c[1];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=F.Fatal(new T([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:f=B.NewImage(320,240,0);$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;J=e[0];a=e[1];if(!($interfaceIsEqual(a,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=F.Fatal(new T([a]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:h=J.Fill((g=E.White,new g.constructor.elem(g)));$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=B.Run(K,320,240,2,"Paint (Ebiten Demo)");$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:$r=F.Fatal(new T([j]));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:$s=-1;case-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.$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=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;}H=0;I=M.nil;J=M.nil;if($pkg===$mainPkg){$s=8;continue;}$s=9;continue;case 8:$r=L();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 9:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/paint"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=paint.js.map diff --git a/_docs/public/examples/paint.js.map b/_docs/public/examples/paint.js.map deleted file mode 100644 index ad28e31e9..000000000 --- a/_docs/public/examples/paint.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"paint.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/input.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/internal/assets/assets.go","/github.com/hajimehoshi/ebiten/ebitenutil/internal/assets/bindata.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/debugprint.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/paint/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;mfCnQA,8B,8C,WA0CC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;;+QCU/B,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;i1GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;wQC1BA,+D,gDAIA,kC,4CAIA,sC,oDAIA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,qE,mBC6nBC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;smFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,yBCQA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;kZ,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCzPzB,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;y0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,+GAuBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,6uZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eC1HoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;4gD,4C,mDCtEA,kG,yFCCK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;u/ICpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,2gBAoBI,YACA,eACJ,uQACK,SACA,SACJ,wD,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,0O,yCAGA,oB,CAEE,iK,OACF,iB,OAED,uDACA,uB,oYAUI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,uI,+C,mDCGA,sC,6wBCaA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;k2CCzyBA,6G,sCAEC,oB,CAED,wH,sCAEC,oB,CAED,oB,iMCnBK,iBACL,c,mGAEK,iBACL,c,mGAEK,iBACL,c,sGAEK,iBACL,iB,0GAEK,iBACL,a,oGAEK,iBACL,iB,4EAMA,oB,kCAIA,oB,sCAEC,iB,CAGD,+GACA,yCACA,oB,4RAOA,2BACG,mI,OACF,mGACA,mE,OACC,kL,OAED,0B,OAED,kK,m7C,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,qyL;4Q;+5CCYK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;q0CCldK,YACL,gB,sKAGK,YACL,iBACA,iDACA,iCACA,eACA,e,Q,gD,C,0D,8KAOK,YACL,iBAEA,uB,W,gD,CAIA,2EACA,mG,0D,sRAYA,oH,0eAGK,OACL,sHAEA,UACA,UACA,UACA,U,QAEC,QACA,QACA,Q,CAED,gHAGA,6BACA,wBACA,0G,irBAIK,OACL,qD,OACC,6G,sCAEC,S,CAED,kI,sCAEC,S,C,OAGF,kE,OACC,oBACI,YACJ,wI,sCAEC,S,C,OAGF,+JACA,qKACA,iB,+VCnEA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,62B,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G,yB;srBCYA,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;q2B,8BCrQC,W,CAGD,mCAEA,2D,OACC,8GACA,sBACA,8BACA,qFACA,wGACG,qK,OACF,S,O,OAIC,yK,OACF,S,OAGE,wT,QACF,S,QAED,iB,2cAII,YAEJ,uEAMA,+KAKA,mE,OACC,sG,OAGD,qHACA,mE,OACC,sG,OAED,6HAEG,iM,QACF,wG,Q,uV,4F,4F,4F,4F,4F,4F,gH,iD,O,wF,mB"} diff --git a/_docs/public/examples/perspective.js b/_docs/public/examples/perspective.js deleted file mode 100644 index 18ddddba2..000000000 --- a/_docs/public/examples/perspective.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AM,AO,AQ,AT;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AM=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new AL.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewCMYK=AM;AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};AT=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=0;j=0;k=g;l=h;m=i;n=j;o=f;if(o===1){m=(p=((e.Max.X+1>>0))/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))-(q=e.Min.X/2,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===2){m=(r=((e.Max.X+1>>0))/2,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))-(s=e.Min.X/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(t=((e.Max.Y+1>>0))/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))-(u=e.Min.Y/2,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===3){m=k;n=(v=((e.Max.Y+1>>0))/2,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))-(w=e.Min.Y/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===4){m=(x=((e.Max.X+3>>0))/4,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))-(y=e.Min.X/4,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===5){m=(z=((e.Max.X+3>>0))/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))-(aa=e.Min.X/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(ab=((e.Max.Y+1>>0))/2,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero"))-(ac=e.Min.Y/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;}else{m=k;n=l;}ad=($imul(k,l))+($imul(($imul(0,m)),n))>>0;ae=($imul(k,l))+($imul(($imul(1,m)),n))>>0;af=($imul(k,l))+($imul(($imul(2,m)),n))>>0;ag=$makeSlice(AV,af);return new AS.ptr($subslice(ag,0,ad,ad),$subslice(ag,ad,ae,ae),$subslice(ag,ae,af,af),k,m,f,$clone(e,Q));};$pkg.NewYCbCr=AT;O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AH,AM,AN,AQ,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/jpeg"]=(function(){var $pkg={},$init,E,F,B,C,D,A,H,J,L,M,O,R,S,AD,AF,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BW,BX,BY,I,N,P,T,AE,AG,K,U,V,W,AH;E=$packages["bufio"];F=$packages["errors"];B=$packages["image"];C=$packages["image/color"];D=$packages["image/internal/imageutil"];A=$packages["io"];H=$pkg.huffman=$newType(0,$kindStruct,"jpeg.huffman","huffman","image/jpeg",function(nCodes_,lut_,vals_,minCodes_,maxCodes_,valsIndices_){this.$val=this;if(arguments.length===0){this.nCodes=0;this.lut=BF.zero();this.vals=BG.zero();this.minCodes=AW.zero();this.maxCodes=AW.zero();this.valsIndices=AW.zero();return;}this.nCodes=nCodes_;this.lut=lut_;this.vals=vals_;this.minCodes=minCodes_;this.maxCodes=maxCodes_;this.valsIndices=valsIndices_;});J=$pkg.block=$newType(256,$kindArray,"jpeg.block","block","image/jpeg",null);L=$pkg.FormatError=$newType(8,$kindString,"jpeg.FormatError","FormatError","image/jpeg",null);M=$pkg.UnsupportedError=$newType(8,$kindString,"jpeg.UnsupportedError","UnsupportedError","image/jpeg",null);O=$pkg.component=$newType(0,$kindStruct,"jpeg.component","component","image/jpeg",function(h_,v_,c_,tq_){this.$val=this;if(arguments.length===0){this.h=0;this.v=0;this.c=0;this.tq=0;return;}this.h=h_;this.v=v_;this.c=c_;this.tq=tq_;});R=$pkg.bits=$newType(0,$kindStruct,"jpeg.bits","bits","image/jpeg",function(a_,m_,n_){this.$val=this;if(arguments.length===0){this.a=0;this.m=0;this.n=0;return;}this.a=a_;this.m=m_;this.n=n_;});S=$pkg.decoder=$newType(0,$kindStruct,"jpeg.decoder","decoder","image/jpeg",function(r_,bits_,bytes_,width_,height_,img1_,img3_,blackPix_,blackStride_,ri_,nComp_,progressive_,jfif_,adobeTransformValid_,adobeTransform_,eobRun_,comp_,progCoeffs_,huff_,quant_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=new R.ptr(0,0,0);this.bytes=new BB.ptr(BA.zero(),0,0,0);this.width=0;this.height=0;this.img1=AX.nil;this.img3=AY.nil;this.blackPix=AV.nil;this.blackStride=0;this.ri=0;this.nComp=0;this.progressive=false;this.jfif=false;this.adobeTransformValid=false;this.adobeTransform=0;this.eobRun=0;this.comp=BC.zero();this.progCoeffs=BE.zero();this.huff=BI.zero();this.quant=BK.zero();this.tmp=BL.zero();return;}this.r=r_;this.bits=bits_;this.bytes=bytes_;this.width=width_;this.height=height_;this.img1=img1_;this.img3=img3_;this.blackPix=blackPix_;this.blackStride=blackStride_;this.ri=ri_;this.nComp=nComp_;this.progressive=progressive_;this.jfif=jfif_;this.adobeTransformValid=adobeTransformValid_;this.adobeTransform=adobeTransform_;this.eobRun=eobRun_;this.comp=comp_;this.progCoeffs=progCoeffs_;this.huff=huff_;this.quant=quant_;this.tmp=tmp_;});AD=$pkg.huffmanSpec=$newType(0,$kindStruct,"jpeg.huffmanSpec","huffmanSpec","image/jpeg",function(count_,value_){this.$val=this;if(arguments.length===0){this.count=AU.zero();this.value=AV.nil;return;}this.count=count_;this.value=value_;});AF=$pkg.huffmanLUT=$newType(12,$kindSlice,"jpeg.huffmanLUT","huffmanLUT","image/jpeg",null);AS=$arrayType(AF,4);AU=$arrayType($Uint8,16);AV=$sliceType($Uint8);AW=$arrayType($Int32,16);AX=$ptrType(B.Gray);AY=$ptrType(B.YCbCr);AZ=$structType([{prop:"src",name:"src",pkg:"image/jpeg",typ:AV,tag:""},{prop:"stride",name:"stride",pkg:"image/jpeg",typ:$Int,tag:""}]);BA=$arrayType($Uint8,4096);BB=$structType([{prop:"buf",name:"buf",pkg:"image/jpeg",typ:BA,tag:""},{prop:"i",name:"i",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"j",name:"j",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nUnreadable",name:"nUnreadable",pkg:"image/jpeg",typ:$Int,tag:""}]);BC=$arrayType(O,4);BD=$sliceType(J);BE=$arrayType(BD,4);BF=$arrayType($Uint16,256);BG=$arrayType($Uint8,256);BH=$arrayType(H,4);BI=$arrayType(BH,2);BJ=$arrayType($Int32,64);BK=$arrayType(J,4);BL=$arrayType($Uint8,128);BM=$structType([{prop:"compIndex",name:"compIndex",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"td",name:"td",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"ta",name:"ta",pkg:"image/jpeg",typ:$Uint8,tag:""}]);BN=$arrayType(BM,4);BO=$sliceType(O);BP=$arrayType($Int32,4);BQ=$sliceType($Uint32);BR=$ptrType(AF);BW=$ptrType(H);BX=$ptrType(J);BY=$ptrType(S);S.ptr.prototype.ensureNBits=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;case 1:d=b.readByteStuffedByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){if($interfaceIsEqual(f,A.EOF)){return new L(I);}return f;}b.bits.a=((b.bits.a<<8>>>0)|(e>>>0))>>>0;b.bits.n=b.bits.n+(8)>>0;if(b.bits.m===0){b.bits.m=128;}else{b.bits.m=(g=(8),g<32?(b.bits.m<>>0;}if(b.bits.n>=a){$s=2;continue;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ensureNBits};}$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;};S.prototype.ensureNBits=function(a){return this.$val.ensureNBits(a);};S.ptr.prototype.receiveExtend=function(a){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:b=this;if(b.bits.n<(a>>0)){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:case 2:b.bits.n=b.bits.n-((a>>0))>>0;b.bits.m=(e=(a),e<32?(b.bits.m>>>e):0)>>>0;g=(f=a,f<32?(1<>0;i=(((h=(b.bits.n<<24>>>24),h<32?(b.bits.a>>>h):0)>>>0)>>0)&((g-1>>0));if(i<(g>>1>>0)){i=i+(((((j=a,j<32?(-1<>0))+1>>0))>>0;}return[i,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.receiveExtend};}$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;};S.prototype.receiveExtend=function(a){return this.$val.receiveExtend(a);};S.ptr.prototype.processDHT=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,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;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;case 1:if(!(a>0)){$s=2;continue;}if(a<17){return new L("DHT has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,17));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return d;case 5:e=b.tmp[0]>>>4<<24>>>24;if(e>1){return new L("bad Tc value");}f=(b.tmp[0]&15)>>>0;if(f>3||!b.progressive&&f>1){return new L("bad Th value");}i=(g=(h=b.huff,((e<0||e>=h.length)?$throwRuntimeError("index out of range"):h[e])),((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]));i.nCodes=0;j=AW.zero();k=j;l=0;while(true){if(!(l<16)){break;}m=l;((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]=((n=b.tmp,o=m+1>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]))>>0));i.nCodes=i.nCodes+(((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]))>>0;l++;}if(i.nCodes===0){return new L("Huffman table has zero length");}if(i.nCodes>256){return new L("Huffman table has excessive length");}a=a-(((i.nCodes>>0)+17>>0))>>0;if(a<0){return new L("DHT has wrong length");}p=b.readFull($subslice(new AV(i.vals),0,i.nCodes));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return q;case 8:r=i.lut;s=0;while(true){if(!(s<256)){break;}t=s;(u=i.lut,((t<0||t>=u.length)?$throwRuntimeError("index out of range"):u[t]=0));s++;}v=0;w=0;x=v;y=w;z=0;while(true){if(!(z<8)){break;}y=(aa=(1),aa<32?(y<>>0;ab=0;while(true){if(!(ab<((z<0||z>=j.length)?$throwRuntimeError("index out of range"):j[z]))){break;}ad=(((ac=((7-z>>>0)),ac<32?(y<>>0)<<24>>>24);af=((((ae=i.vals,((x<0||x>=ae.length)?$throwRuntimeError("index out of range"):ae[x]))<<16>>>16)<<8<<16>>>16)|((2+z>>>0)<<16>>>16))>>>0;ag=0;while(true){if(!(ag<((ah=((7-z>>>0)),ah<32?(1<>>24))){break;}(ai=i.lut,aj=(ad|ag)>>>0,((aj<0||aj>=ai.length)?$throwRuntimeError("index out of range"):ai[aj]=af));ag=ag+(1)<<24>>>24;}y=y+(1)>>>0;x=x+(1)>>>0;ab=ab+(1)>>0;}z=z+(1)>>>0;}ak=0;al=0;am=ak;an=al;ao=j;ap=0;while(true){if(!(ap<16)){break;}aq=ap;ar=((ap<0||ap>=ao.length)?$throwRuntimeError("index out of range"):ao[ap]);if(ar===0){(as=i.minCodes,((aq<0||aq>=as.length)?$throwRuntimeError("index out of range"):as[aq]=-1));(at=i.maxCodes,((aq<0||aq>=at.length)?$throwRuntimeError("index out of range"):at[aq]=-1));(au=i.valsIndices,((aq<0||aq>=au.length)?$throwRuntimeError("index out of range"):au[aq]=-1));}else{(av=i.minCodes,((aq<0||aq>=av.length)?$throwRuntimeError("index out of range"):av[aq]=am));(aw=i.maxCodes,((aq<0||aq>=aw.length)?$throwRuntimeError("index out of range"):aw[aq]=((am+ar>>0)-1>>0)));(ax=i.valsIndices,((aq<0||aq>=ax.length)?$throwRuntimeError("index out of range"):ax[aq]=an));am=am+(ar)>>0;an=an+(ar)>>0;}am=(ay=(1),ay<32?(am<>0;ap++;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDHT};}$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.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.processDHT=function(a){return this.$val.processDHT(a);};S.ptr.prototype.decodeHuffman=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a.nCodes===0){return[0,new L("uninitialized Huffman table")];}if(b.bits.n<8){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits(8);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(d,new L(T)))&&!($interfaceIsEqual(d,new L(I)))){return[0,d];}if(!((b.bytes.nUnreadable===0))){b.unreadByteStuffedByte();}$s=6;continue;case 5:case 2:h=(e=a.lut,f=((((g=((b.bits.n-8>>0)>>>0),g<32?(b.bits.a>>>g):0)>>>0))&255)>>>0,((f<0||f>=e.length)?$throwRuntimeError("index out of range"):e[f]));if(!((h===0))){i=(((h&255)>>>0))-1<<16>>>16;b.bits.n=b.bits.n-((i>>0))>>0;b.bits.m=(j=(i),j<32?(b.bits.m>>>j):0)>>>0;return[((h>>>8<<16>>>16)<<24>>>24),$ifaceNil];}case 6:k=0;l=0;m=k;n=l;case 7:if(!(m<16)){$s=8;continue;}if(b.bits.n===0){$s=9;continue;}$s=10;continue;case 9:o=b.ensureNBits(1);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return[0,p];case 13:case 10:if(!((((b.bits.a&b.bits.m)>>>0)===0))){n=n|(1);}b.bits.n=b.bits.n-(1)>>0;b.bits.m=(q=(1),q<32?(b.bits.m>>>q):0)>>>0;if(n<=(r=a.maxCodes,((m<0||m>=r.length)?$throwRuntimeError("index out of range"):r[m]))){return[(s=a.vals,t=((u=a.valsIndices,((m<0||m>=u.length)?$throwRuntimeError("index out of range"):u[m]))+n>>0)-(v=a.minCodes,((m<0||m>=v.length)?$throwRuntimeError("index out of range"):v[m]))>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),$ifaceNil];}n=(w=(1),w<32?(n<>0;m=m+(1)>>0;$s=7;continue;case 8:return[0,new L("bad Huffman code")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeHuffman};}$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.$s=$s;$f.$r=$r;return $f;};S.prototype.decodeHuffman=function(a){return this.$val.decodeHuffman(a);};S.ptr.prototype.decodeBit=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.bits.n===0){$s=1;continue;}$s=2;continue;case 1:b=a.ensureNBits(1);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[false,c];case 5:case 2:d=!((((a.bits.a&a.bits.m)>>>0)===0));a.bits.n=a.bits.n-(1)>>0;a.bits.m=(e=(1),e<32?(a.bits.m>>>e):0)>>>0;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBit};}$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;};S.prototype.decodeBit=function(){return this.$val.decodeBit();};S.ptr.prototype.decodeBits=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;if(b.bits.n>0)>>>0),e<32?(b.bits.a>>>e):0)>>>0;f=(f&(((((g=(a>>>0),g<32?(1<>>0))-1>>>0)))>>>0;b.bits.n=b.bits.n-(a)>>0;b.bits.m=(h=((a>>>0)),h<32?(b.bits.m>>>h):0)>>>0;return[f,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBits};}$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;};S.prototype.decodeBits=function(a){return this.$val.decodeBits(a);};K=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,bq,br,bs,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;while(true){if(!(b<8)){break;}c=$imul(b,8);if(((d=c+1>>0,(a.nilCheck,((d<0||d>=a.length)?$throwRuntimeError("index out of range"):a[d])))===0)&&((e=c+2>>0,(a.nilCheck,((e<0||e>=a.length)?$throwRuntimeError("index out of range"):a[e])))===0)&&((f=c+3>>0,(a.nilCheck,((f<0||f>=a.length)?$throwRuntimeError("index out of range"):a[f])))===0)&&((g=c+4>>0,(a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g])))===0)&&((h=c+5>>0,(a.nilCheck,((h<0||h>=a.length)?$throwRuntimeError("index out of range"):a[h])))===0)&&((i=c+6>>0,(a.nilCheck,((i<0||i>=a.length)?$throwRuntimeError("index out of range"):a[i])))===0)&&((j=c+7>>0,(a.nilCheck,((j<0||j>=a.length)?$throwRuntimeError("index out of range"):a[j])))===0)){l=(k=c+0>>0,(a.nilCheck,((k<0||k>=a.length)?$throwRuntimeError("index out of range"):a[k])))<<3>>0;(m=c+0>>0,a.nilCheck,((m<0||m>=a.length)?$throwRuntimeError("index out of range"):a[m]=l));(n=c+1>>0,a.nilCheck,((n<0||n>=a.length)?$throwRuntimeError("index out of range"):a[n]=l));(o=c+2>>0,a.nilCheck,((o<0||o>=a.length)?$throwRuntimeError("index out of range"):a[o]=l));(p=c+3>>0,a.nilCheck,((p<0||p>=a.length)?$throwRuntimeError("index out of range"):a[p]=l));(q=c+4>>0,a.nilCheck,((q<0||q>=a.length)?$throwRuntimeError("index out of range"):a[q]=l));(r=c+5>>0,a.nilCheck,((r<0||r>=a.length)?$throwRuntimeError("index out of range"):a[r]=l));(s=c+6>>0,a.nilCheck,((s<0||s>=a.length)?$throwRuntimeError("index out of range"):a[s]=l));(t=c+7>>0,a.nilCheck,((t<0||t>=a.length)?$throwRuntimeError("index out of range"):a[t]=l));b=b+(1)>>0;continue;}v=(((u=c+0>>0,(a.nilCheck,((u<0||u>=a.length)?$throwRuntimeError("index out of range"):a[u])))<<11>>0))+128>>0;x=(w=c+4>>0,(a.nilCheck,((w<0||w>=a.length)?$throwRuntimeError("index out of range"):a[w])))<<11>>0;z=(y=c+6>>0,(a.nilCheck,((y<0||y>=a.length)?$throwRuntimeError("index out of range"):a[y])));ab=(aa=c+2>>0,(a.nilCheck,((aa<0||aa>=a.length)?$throwRuntimeError("index out of range"):a[aa])));ad=(ac=c+1>>0,(a.nilCheck,((ac<0||ac>=a.length)?$throwRuntimeError("index out of range"):a[ac])));af=(ae=c+7>>0,(a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae])));ah=(ag=c+5>>0,(a.nilCheck,((ag<0||ag>=a.length)?$throwRuntimeError("index out of range"):a[ag])));aj=(ai=c+3>>0,(a.nilCheck,((ai<0||ai>=a.length)?$throwRuntimeError("index out of range"):a[ai])));ak=$imul(565,((ad+af>>0)));ad=ak+($imul(2276,ad))>>0;af=ak-($imul(3406,af))>>0;ak=$imul(2408,((ah+aj>>0)));ah=ak-($imul(799,ah))>>0;aj=ak-($imul(4017,aj))>>0;ak=v+x>>0;v=v-(x)>>0;x=$imul(1108,((ab+z>>0)));z=x-($imul(3784,z))>>0;ab=x+($imul(1568,ab))>>0;x=ad+ah>>0;ad=ad-(ah)>>0;ah=af+aj>>0;af=af-(aj)>>0;aj=ak+ab>>0;ak=ak-(ab)>>0;ab=v+z>>0;v=v-(z)>>0;z=((($imul(181,((ad+af>>0))))+128>>0))>>8>>0;ad=((($imul(181,((ad-af>>0))))+128>>0))>>8>>0;(al=c+0>>0,a.nilCheck,((al<0||al>=a.length)?$throwRuntimeError("index out of range"):a[al]=(((aj+x>>0))>>8>>0)));(am=c+1>>0,a.nilCheck,((am<0||am>=a.length)?$throwRuntimeError("index out of range"):a[am]=(((ab+z>>0))>>8>>0)));(an=c+2>>0,a.nilCheck,((an<0||an>=a.length)?$throwRuntimeError("index out of range"):a[an]=(((v+ad>>0))>>8>>0)));(ao=c+3>>0,a.nilCheck,((ao<0||ao>=a.length)?$throwRuntimeError("index out of range"):a[ao]=(((ak+ah>>0))>>8>>0)));(ap=c+4>>0,a.nilCheck,((ap<0||ap>=a.length)?$throwRuntimeError("index out of range"):a[ap]=(((ak-ah>>0))>>8>>0)));(aq=c+5>>0,a.nilCheck,((aq<0||aq>=a.length)?$throwRuntimeError("index out of range"):a[aq]=(((v-ad>>0))>>8>>0)));(ar=c+6>>0,a.nilCheck,((ar<0||ar>=a.length)?$throwRuntimeError("index out of range"):a[ar]=(((ab-z>>0))>>8>>0)));(as=c+7>>0,a.nilCheck,((as<0||as>=a.length)?$throwRuntimeError("index out of range"):a[as]=(((aj-x>>0))>>8>>0)));b=b+(1)>>0;}at=0;while(true){if(!(at<8)){break;}av=(((au=0+at>>0,(a.nilCheck,((au<0||au>=a.length)?$throwRuntimeError("index out of range"):a[au])))<<8>>0))+8192>>0;ax=(aw=32+at>>0,(a.nilCheck,((aw<0||aw>=a.length)?$throwRuntimeError("index out of range"):a[aw])))<<8>>0;az=(ay=48+at>>0,(a.nilCheck,((ay<0||ay>=a.length)?$throwRuntimeError("index out of range"):a[ay])));bb=(ba=16+at>>0,(a.nilCheck,((ba<0||ba>=a.length)?$throwRuntimeError("index out of range"):a[ba])));bd=(bc=8+at>>0,(a.nilCheck,((bc<0||bc>=a.length)?$throwRuntimeError("index out of range"):a[bc])));bf=(be=56+at>>0,(a.nilCheck,((be<0||be>=a.length)?$throwRuntimeError("index out of range"):a[be])));bh=(bg=40+at>>0,(a.nilCheck,((bg<0||bg>=a.length)?$throwRuntimeError("index out of range"):a[bg])));bj=(bi=24+at>>0,(a.nilCheck,((bi<0||bi>=a.length)?$throwRuntimeError("index out of range"):a[bi])));bk=($imul(565,((bd+bf>>0))))+4>>0;bd=((bk+($imul(2276,bd))>>0))>>3>>0;bf=((bk-($imul(3406,bf))>>0))>>3>>0;bk=($imul(2408,((bh+bj>>0))))+4>>0;bh=((bk-($imul(799,bh))>>0))>>3>>0;bj=((bk-($imul(4017,bj))>>0))>>3>>0;bk=av+ax>>0;av=av-(ax)>>0;ax=($imul(1108,((bb+az>>0))))+4>>0;az=((ax-($imul(3784,az))>>0))>>3>>0;bb=((ax+($imul(1568,bb))>>0))>>3>>0;ax=bd+bh>>0;bd=bd-(bh)>>0;bh=bf+bj>>0;bf=bf-(bj)>>0;bj=bk+bb>>0;bk=bk-(bb)>>0;bb=av+az>>0;av=av-(az)>>0;az=((($imul(181,((bd+bf>>0))))+128>>0))>>8>>0;bd=((($imul(181,((bd-bf>>0))))+128>>0))>>8>>0;(bl=0+at>>0,a.nilCheck,((bl<0||bl>=a.length)?$throwRuntimeError("index out of range"):a[bl]=(((bj+ax>>0))>>14>>0)));(bm=8+at>>0,a.nilCheck,((bm<0||bm>=a.length)?$throwRuntimeError("index out of range"):a[bm]=(((bb+az>>0))>>14>>0)));(bn=16+at>>0,a.nilCheck,((bn<0||bn>=a.length)?$throwRuntimeError("index out of range"):a[bn]=(((av+bd>>0))>>14>>0)));(bo=24+at>>0,a.nilCheck,((bo<0||bo>=a.length)?$throwRuntimeError("index out of range"):a[bo]=(((bk+bh>>0))>>14>>0)));(bp=32+at>>0,a.nilCheck,((bp<0||bp>=a.length)?$throwRuntimeError("index out of range"):a[bp]=(((bk-bh>>0))>>14>>0)));(bq=40+at>>0,a.nilCheck,((bq<0||bq>=a.length)?$throwRuntimeError("index out of range"):a[bq]=(((av-bd>>0))>>14>>0)));(br=48+at>>0,a.nilCheck,((br<0||br>=a.length)?$throwRuntimeError("index out of range"):a[br]=(((bb-az>>0))>>14>>0)));(bs=56+at>>0,a.nilCheck,((bs<0||bs>=a.length)?$throwRuntimeError("index out of range"):a[bs]=(((bj-ax>>0))>>14>>0)));at=at+(1)>>0;}};L.prototype.Error=function(){var $ptr,a;a=this.$val;return"invalid JPEG format: "+a;};$ptrType(L).prototype.Error=function(){return new L(this.$get()).Error();};M.prototype.Error=function(){var $ptr,a;a=this.$val;return"unsupported JPEG feature: "+a;};$ptrType(M).prototype.Error=function(){return new M(this.$get()).Error();};S.ptr.prototype.fill=function(){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:a=this;if(!((a.bytes.i===a.bytes.j))){$panic(new $String("jpeg: fill called when unread bytes exist"));}if(a.bytes.j>2){a.bytes.buf[0]=(b=a.bytes.buf,c=a.bytes.j-2>>0,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]));a.bytes.buf[1]=(d=a.bytes.buf,e=a.bytes.j-1>>0,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));f=2;g=2;a.bytes.i=f;a.bytes.j=g;}i=a.r.Read($subslice(new AV(a.bytes.buf),a.bytes.j));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];a.bytes.j=a.bytes.j+(j)>>0;if(j>0){k=$ifaceNil;}return k;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.fill};}$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;};S.prototype.fill=function(){return this.$val.fill();};S.ptr.prototype.unreadByteStuffedByte=function(){var $ptr,a,b,c;a=this;a.bytes.i=a.bytes.i-(a.bytes.nUnreadable)>>0;a.bytes.nUnreadable=0;if(a.bits.n>=8){a.bits.a=(b=(8),b<32?(a.bits.a>>>b):0)>>>0;a.bits.n=a.bits.n-(8)>>0;a.bits.m=(c=(8),c<32?(a.bits.m>>>c):0)>>>0;}};S.prototype.unreadByteStuffedByte=function(){return this.$val.unreadByteStuffedByte();};S.ptr.prototype.readByte=function(){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:a=0;b=$ifaceNil;c=this;case 1:if(!(c.bytes.i===c.bytes.j)){$s=2;continue;}d=c.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(b,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=0;f=b;a=e;b=f;return[a,b];case 5:$s=1;continue;case 2:a=(g=c.bytes.buf,h=c.bytes.i,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=0;i=a;j=$ifaceNil;a=i;b=j;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByte};}$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;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.readByteStuffedByte=function(){var $ptr,a,aa,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;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=0;b=$ifaceNil;c=this;if((c.bytes.i+2>>0)<=c.bytes.j){a=(d=c.bytes.buf,e=c.bytes.i,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=1;if(!((a===255))){f=a;g=b;a=f;b=g;return[a,b];}if(!(((h=c.bytes.buf,i=c.bytes.i,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]))===0))){j=0;k=new L(T);a=j;b=k;return[a,b];}c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=2;l=255;m=$ifaceNil;a=l;b=m;return[a,b];}c.bytes.nUnreadable=0;o=c.readByte();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;a=n[0];b=n[1];if(!($interfaceIsEqual(b,$ifaceNil))){p=0;q=b;a=p;b=q;return[a,b];}c.bytes.nUnreadable=1;if(!((a===255))){r=a;s=$ifaceNil;a=r;b=s;return[a,b];}u=c.readByte();$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;a=t[0];b=t[1];if(!($interfaceIsEqual(b,$ifaceNil))){v=0;w=b;a=v;b=w;return[a,b];}c.bytes.nUnreadable=2;if(!((a===0))){x=0;y=new L(T);a=x;b=y;return[a,b];}z=255;aa=$ifaceNil;a=z;b=aa;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByteStuffedByte};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$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.readByteStuffedByte=function(){return this.$val.readByteStuffedByte();};S.ptr.prototype.readFull=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=$copySlice(a,$subslice(new AV(b.bytes.buf),b.bytes.i,b.bytes.j));a=$subslice(a,c);b.bytes.i=b.bytes.i+(c)>>0;if(a.$length===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readFull};}$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;};S.prototype.readFull=function(a){return this.$val.readFull(a);};S.ptr.prototype.ignore=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=b.bytes.j-b.bytes.i>>0;if(c>a){c=a;}b.bytes.i=b.bytes.i+(c)>>0;a=a-(c)>>0;if(a===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ignore};}$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;};S.prototype.ignore=function(a){return this.$val.ignore(a);};S.ptr.prototype.processSOF=function(a){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,$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;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;if(!((b.nComp===0))){return new L("multiple SOF markers");}c=a;if(c===9){b.nComp=1;}else if(c===15){b.nComp=3;}else if(c===18){b.nComp=4;}else{return new M("number of components");}d=b.readFull($subslice(new AV(b.tmp),0,a));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:if(!((b.tmp[0]===8))){return new M("precision");}b.height=((b.tmp[1]>>0)<<8>>0)+(b.tmp[2]>>0)>>0;b.width=((b.tmp[3]>>0)<<8>>0)+(b.tmp[4]>>0)>>0;if(!(((b.tmp[5]>>0)===b.nComp))){return new L("SOF has wrong length");}f=0;while(true){if(!(f=i.length)?$throwRuntimeError("index out of range"):i[f])).c=(g=b.tmp,h=6+($imul(3,f))>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));j=0;while(true){if(!(j=k.length)?$throwRuntimeError("index out of range"):k[f])).c===(l=b.comp,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j])).c){return new L("repeated component identifier");}j=j+(1)>>0;}(o=b.comp,((f<0||f>=o.length)?$throwRuntimeError("index out of range"):o[f])).tq=(m=b.tmp,n=8+($imul(3,f))>>0,((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]));if((p=b.comp,((f<0||f>=p.length)?$throwRuntimeError("index out of range"):p[f])).tq>3){return new L("bad Tq value");}s=(q=b.tmp,r=7+($imul(3,f))>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r]));t=((s>>>4<<24>>>24)>>0);u=(((s&15)>>>0)>>0);v=t;w=u;if(v<1||4=ae.length)?$throwRuntimeError("index out of range"):ae[f])).h=v;(af=b.comp,((f<0||f>=af.length)?$throwRuntimeError("index out of range"):af[f])).v=w;f=f+(1)>>0;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOF};}$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.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.processSOF=function(a){return this.$val.processSOF(a);};S.ptr.prototype.processDQT=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;case 1:if(!(a>0)){$s=2;continue;}a=a-(1)>>0;d=b.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=(e&15)>>>0;if(g>3){return new L("bad Tq value");}h=e>>>4<<24>>>24;if(h===0){$s=4;continue;}if(h===1){$s=5;continue;}$s=6;continue;case 4:if(a<64){$s=2;continue s;}a=a-(64)>>0;i=b.readFull($subslice(new AV(b.tmp),0,64));$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return j;case 10:k=(l=b.quant,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g]));m=0;while(true){if(!(m<64)){break;}n=m;(p=(q=b.quant,((g<0||g>=q.length)?$throwRuntimeError("index out of range"):q[g])),((n<0||n>=p.length)?$throwRuntimeError("index out of range"):p[n]=((o=b.tmp,((n<0||n>=o.length)?$throwRuntimeError("index out of range"):o[n]))>>0)));m++;}$s=7;continue;case 5:if(a<128){$s=2;continue s;}a=a-(128)>>0;r=b.readFull($subslice(new AV(b.tmp),0,128));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return s;case 13:t=(u=b.quant,((g<0||g>=u.length)?$throwRuntimeError("index out of range"):u[g]));v=0;while(true){if(!(v<64)){break;}w=v;(ab=(ac=b.quant,((g<0||g>=ac.length)?$throwRuntimeError("index out of range"):ac[g])),((w<0||w>=ab.length)?$throwRuntimeError("index out of range"):ab[w]=((((x=b.tmp,y=$imul(2,w),((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))>>0)<<8>>0)|((z=b.tmp,aa=($imul(2,w))+1>>0,((aa<0||aa>=z.length)?$throwRuntimeError("index out of range"):z[aa]))>>0))));v++;}$s=7;continue;case 6:return new L("bad Pq value");case 7:$s=1;continue;case 2:if(!((a===0))){return new L("DQT has wrong length");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDQT};}$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;};S.prototype.processDQT=function(a){return this.$val.processDQT(a);};S.ptr.prototype.processDRI=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;if(!((a===2))){return new L("DRI has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,2));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:b.ri=((b.tmp[0]>>0)<<8>>0)+(b.tmp[1]>>0)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDRI};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.processDRI=function(a){return this.$val.processDRI(a);};S.ptr.prototype.processApp0Marker=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;if(a<5){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,5));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(5)>>0;b.jfif=(b.tmp[0]===74)&&(b.tmp[1]===70)&&(b.tmp[2]===73)&&(b.tmp[3]===70)&&(b.tmp[4]===0);if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp0Marker};}$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;};S.prototype.processApp0Marker=function(a){return this.$val.processApp0Marker(a);};S.ptr.prototype.processApp14Marker=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;if(a<12){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,12));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(12)>>0;if((b.tmp[0]===65)&&(b.tmp[1]===100)&&(b.tmp[2]===111)&&(b.tmp[3]===98)&&(b.tmp[4]===101)){b.adobeTransformValid=true;b.adobeTransform=b.tmp[11];}if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp14Marker};}$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;};S.prototype.processApp14Marker=function(a){return this.$val.processApp14Marker(a);};S.ptr.prototype.decode=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,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;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;c.r=a;d=c.readFull($subslice(new AV(c.tmp),0,2));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,e];case 3:if(!((c.tmp[0]===255))||!((c.tmp[1]===216))){return[$ifaceNil,new L("missing SOI marker")];}case 4:f=c.readFull($subslice(new AV(c.tmp),0,2));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}case 7:if(!(!((c.tmp[0]===255)))){$s=8;continue;}c.tmp[0]=c.tmp[1];i=c.readByte();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.tmp[1]=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=7;continue;case 8:j=c.tmp[1];if(j===0){$s=10;continue;}$s=11;continue;case 10:$s=4;continue;case 11:case 12:if(!(j===255)){$s=13;continue;}l=c.readByte();$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];g=k[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=12;continue;case 13:if(j===217){$s=5;continue;}if(208<=j&&j<=215){$s=15;continue;}$s=16;continue;case 15:$s=4;continue;case 16:m=c.readFull($subslice(new AV(c.tmp),0,2));$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;if(!($interfaceIsEqual(g,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:return[$ifaceNil,g];case 19:n=(((c.tmp[0]>>0)<<8>>0)+(c.tmp[1]>>0)>>0)-2>>0;if(n<0){return[$ifaceNil,new L("short segment length")];}o=j;if(o===192||o===193||o===194){$s=20;continue;}if(o===196){$s=21;continue;}if(o===219){$s=22;continue;}if(o===218){$s=23;continue;}if(o===221){$s=24;continue;}if(o===224){$s=25;continue;}if(o===238){$s=26;continue;}$s=27;continue;case 20:c.progressive=j===194;p=c.processSOF(n);$s=29;case 29:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}g=p;if(b&&c.jfif){return[$ifaceNil,g];}$s=28;continue;case 21:if(b){$s=30;continue;}$s=31;continue;case 30:q=c.ignore(n);$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}g=q;$s=32;continue;case 31:r=c.processDHT(n);$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 32:$s=28;continue;case 22:if(b){$s=35;continue;}$s=36;continue;case 35:s=c.ignore(n);$s=38;case 38:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}g=s;$s=37;continue;case 36:t=c.processDQT(n);$s=39;case 39:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}g=t;case 37:$s=28;continue;case 23:if(b){return[$ifaceNil,$ifaceNil];}u=c.processSOS(n);$s=40;case 40:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}g=u;$s=28;continue;case 24:if(b){$s=41;continue;}$s=42;continue;case 41:v=c.ignore(n);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}g=v;$s=43;continue;case 42:w=c.processDRI(n);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}g=w;case 43:$s=28;continue;case 25:x=c.processApp0Marker(n);$s=46;case 46:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}g=x;$s=28;continue;case 26:y=c.processApp14Marker(n);$s=47;case 47:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}g=y;$s=28;continue;case 27:if(224<=j&&j<=239||(j===254)){$s=48;continue;}if(j<192){$s=49;continue;}$s=50;continue;case 48:z=c.ignore(n);$s=52;case 52:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}g=z;$s=51;continue;case 49:g=new L("unknown marker");$s=51;continue;case 50:g=new M("unknown marker");case 51:case 28:if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=4;continue;case 5:if(!(c.img1===AX.nil)){return[c.img1,$ifaceNil];}if(!(c.img3===AY.nil)){if(!(c.blackPix===AV.nil)){return c.applyBlack();}else if(c.isRGB()){return c.convertToRGB();}return[c.img3,$ifaceNil];}return[$ifaceNil,new L("missing SOS marker")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decode};}$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.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.decode=function(a,b){return this.$val.decode(a,b);};S.ptr.prototype.applyBlack=function(){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;a=this;if(!a.adobeTransformValid){return[$ifaceNil,new M("unknown color model: 4-component JPEG doesn't have Adobe APP14 metadata")];}if(!((a.adobeTransform===0))){b=$clone(a.img3.Bounds(),B.Rectangle);c=B.NewRGBA(b);D.DrawYCbCr(c,b,a.img3,b.Min);d=0;e=b.Min.Y;f=d;g=e;while(true){if(!(g>0;i=b.Min.X;j=h;k=i;while(true){if(!(k=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+j]=(255-(l=a.blackPix,m=($imul(((g-b.Min.Y>>0)),a.blackStride))+((k-b.Min.X>>0))>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))<<24>>>24)));o=j+4>>0;p=k+1>>0;j=o;k=p;}q=f+c.Stride>>0;r=g+1>>0;f=q;g=r;}return[new B.CMYK.ptr(c.Pix,c.Stride,$clone(c.Rect,B.Rectangle)),$ifaceNil];}s=$clone(a.img3.Bounds(),B.Rectangle);t=B.NewCMYK(s);u=$toNativeArray($kindStruct,[new AZ.ptr(a.img3.Y,a.img3.YStride),new AZ.ptr(a.img3.Cb,a.img3.CStride),new AZ.ptr(a.img3.Cr,a.img3.CStride),new AZ.ptr(a.blackPix,a.blackStride)]);v=u;w=0;while(true){if(!(w<4)){break;}x=w;y=$clone(((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]),AZ);ab=!(((z=a.comp,((x<0||x>=z.length)?$throwRuntimeError("index out of range"):z[x])).h===a.comp[0].h))||!(((aa=a.comp,((x<0||x>=aa.length)?$throwRuntimeError("index out of range"):aa[x])).v===a.comp[0].v));ac=0;ad=s.Min.Y;ae=ac;af=ad;while(true){if(!(af>0;if(ab){ag=(ah=ag/(2),(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero"));}ai=ae+x>>0;aj=s.Min.X;ak=ai;al=aj;while(true){if(!(al>0;if(ab){am=(an=am/(2),(an===an&&an!==1/0&&an!==-1/0)?an>>0:$throwRuntimeError("integer divide by zero"));}(aq=t.Pix,((ak<0||ak>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ak]=(255-(ao=y.src,ap=($imul(ag,y.stride))+am>>0,((ap<0||ap>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ap]))<<24>>>24)));ar=ak+4>>0;as=al+1>>0;ak=ar;al=as;}at=ae+t.Stride>>0;au=af+1>>0;ae=at;af=au;}w++;}return[t,$ifaceNil];};S.prototype.applyBlack=function(){return this.$val.applyBlack();};S.ptr.prototype.isRGB=function(){var $ptr,a;a=this;if(a.jfif){return false;}if(a.adobeTransformValid&&(a.adobeTransform===0)){return true;}return(a.comp[0].c===82)&&(a.comp[1].c===71)&&(a.comp[2].c===66);};S.prototype.isRGB=function(){return this.$val.isRGB();};S.ptr.prototype.convertToRGB=function(){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;a=this;c=(b=a.comp[0].h/a.comp[1].h,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));d=$clone(a.img3.Bounds(),B.Rectangle);e=B.NewRGBA(d);f=d.Min.Y;while(true){if(!(f>0;l=j;m=k;while(true){if(!(l>0)+0>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(n=a.img3.Y,o=h+l>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))));(u=e.Pix,v=(g+($imul(4,l))>>0)+1>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]=(r=a.img3.Cb,s=i+(t=l/c,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]))));(z=e.Pix,aa=(g+($imul(4,l))>>0)+2>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(w=a.img3.Cr,x=i+(y=l/c,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))));(ab=e.Pix,ac=(g+($imul(4,l))>>0)+3>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]=255));l=l+(1)>>0;}f=f+(1)>>0;}return[e,$ifaceNil];};S.prototype.convertToRGB=function(){return this.$val.convertToRGB();};U=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=U;V=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());d=b.decode(a,true);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new B.Config.ptr($ifaceNil,0,0),e];case 3:f=b.nComp;if(f===1){return[new B.Config.ptr(C.GrayModel,b.width,b.height),$ifaceNil];}else if(f===3){g=C.YCbCrModel;if(b.isRGB()){g=C.RGBAModel;}return[new B.Config.ptr(g,b.width,b.height),$ifaceNil];}else if(f===4){return[new B.Config.ptr(C.CMYKModel,b.width,b.height),$ifaceNil];}return[new B.Config.ptr($ifaceNil,0,0),new L("missing SOF marker")];}return;}if($f===undefined){$f={$blk:V};}$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.DecodeConfig=V;W=function(){var $ptr;B.RegisterFormat("jpeg","\xFF\xD8",U,V);};S.ptr.prototype.makeImg=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;if(c.nComp===1){d=B.NewGray(B.Rect(0,0,$imul(8,a),$imul(8,b)));c.img1=$assertType(d.SubImage(B.Rect(0,0,c.width,c.height)),AX);return;}e=c.comp[0].h;f=c.comp[0].v;h=(g=e/c.comp[1].h,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));j=(i=f/c.comp[1].v,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));k=0;l=(h<<4>>0)|j;if(l===17){k=0;}else if(l===18){k=3;}else if(l===33){k=1;}else if(l===34){k=2;}else if(l===65){k=4;}else if(l===66){k=5;}else{$panic(new $String("unreachable"));}m=B.NewYCbCr(B.Rect(0,0,$imul(($imul(8,e)),a),$imul(($imul(8,f)),b)),k);c.img3=$assertType(m.SubImage(B.Rect(0,0,c.width,c.height)),AY);if(c.nComp===4){n=c.comp[3].h;o=c.comp[3].v;p=n;q=o;c.blackPix=$makeSlice(AV,($imul(($imul(($imul(($imul(($imul(8,p)),a)),8)),q)),b)));c.blackStride=$imul(($imul(8,p)),a);}};S.prototype.makeImg=function(a,b){return this.$val.makeImg(a,b);};S.ptr.prototype.processSOS=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,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,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;em=$f.em;en=$f.en;eo=$f.eo;ep=$f.ep;eq=$f.eq;er=$f.er;es=$f.es;et=$f.et;eu=$f.eu;ev=$f.ev;ew=$f.ew;ex=$f.ex;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=[b];c=this;if(c.nComp===0){return new L("missing SOF marker");}if(a<6||(4+($imul(2,c.nComp))>>0)>0);if(!((a===(4+($imul(2,g))>>0)))){return new L("SOS length inconsistent with number of components");}h=BN.zero();i=0;j=0;while(true){if(!(j>0,((l<0||l>=k.length)?$throwRuntimeError("index out of range"):k[l]));n=-1;o=$subslice(new BO(c.comp),0,c.nComp);p=0;while(true){if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]),O);if(m===r.c){n=q;}p++;}if(n<0){return new L("unknown component selector");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex=(n<<24>>>24);s=0;while(true){if(!(s=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex===((s<0||s>=h.length)?$throwRuntimeError("index out of range"):h[s]).compIndex){return new L("repeated component selector");}s=s+(1)>>0;}i=i+(($imul((t=c.comp,((n<0||n>=t.length)?$throwRuntimeError("index out of range"):t[n])).h,(u=c.comp,((n<0||n>=u.length)?$throwRuntimeError("index out of range"):u[n])).v)))>>0;((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td=(v=c.tmp,w=2+($imul(2,j))>>0,((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]))>>>4<<24>>>24;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td>3){return new L("bad Td value");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta=((x=c.tmp,y=2+($imul(2,j))>>0,((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))&15)>>>0;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta>3){return new L("bad Ta value");}j=j+(1)>>0;}if(c.nComp>1&&i>10){return new L("total sampling factors too large");}z=0;aa=63;ab=0;ac=0;ad=z;ae=aa;af=ab;ag=ac;if(c.progressive){ad=((ah=c.tmp,ai=1+($imul(2,g))>>0,((ai<0||ai>=ah.length)?$throwRuntimeError("index out of range"):ah[ai]))>>0);ae=((aj=c.tmp,ak=2+($imul(2,g))>>0,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak]))>>0);af=(((al=c.tmp,am=3+($imul(2,g))>>0,((am<0||am>=al.length)?$throwRuntimeError("index out of range"):al[am]))>>>4<<24>>>24)>>>0);ag=((((an=c.tmp,ao=3+($imul(2,g))>>0,((ao<0||ao>=an.length)?$throwRuntimeError("index out of range"):an[ao]))&15)>>>0)>>>0);if(((ad===0)&&!((ae===0)))||ad>ae||64<=ae){return new L("bad spectral selection bounds");}if(!((ad===0))&&!((g===1))){return new L("progressive AC coefficients for more than one component");}if(!((af===0))&&!((af===(ag+1>>>0)))){return new L("bad successive approximation values");}}ap=c.comp[0].h;aq=c.comp[0].v;ar=ap;as=aq;au=(at=(((c.width+($imul(8,ar))>>0)-1>>0))/(($imul(8,ar))),(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero"));aw=(av=(((c.height+($imul(8,as))>>0)-1>>0))/(($imul(8,as))),(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(c.img1===AX.nil&&c.img3===AY.nil){c.makeImg(au,aw);}if(c.progressive){ax=0;while(true){if(!(ax=h.length)?$throwRuntimeError("index out of range"):h[ax]).compIndex;if((az=c.progCoeffs,((ay<0||ay>=az.length)?$throwRuntimeError("index out of range"):az[ay]))===BD.nil){(bc=c.progCoeffs,((ay<0||ay>=bc.length)?$throwRuntimeError("index out of range"):bc[ay]=$makeSlice(BD,($imul(($imul(($imul(au,aw)),(ba=c.comp,((ay<0||ay>=ba.length)?$throwRuntimeError("index out of range"):ba[ay])).h)),(bb=c.comp,((ay<0||ay>=bb.length)?$throwRuntimeError("index out of range"):bb[ay])).v)))));}ax=ax+(1)>>0;}}R.copy(c.bits,new R.ptr(0,0,0));bd=0;be=208;bf=bd;bg=be;b[0]=BJ.zero();bh=BP.zero();bi=0;bj=0;bk=bi;bl=bj;bm=0;bn=0;case 4:if(!(bn=h.length)?$throwRuntimeError("index out of range"):h[bp]).compIndex;bs=(br=c.comp,((bq<0||bq>=br.length)?$throwRuntimeError("index out of range"):br[bq])).h;bu=(bt=c.comp,((bq<0||bq>=bt.length)?$throwRuntimeError("index out of range"):bt[bq])).v;by=(bv=c.quant,bw=(bx=c.comp,((bq<0||bq>=bx.length)?$throwRuntimeError("index out of range"):bx[bq])).tq,((bw<0||bw>=bv.length)?$throwRuntimeError("index out of range"):bv[bw]));bz=0;case 10:if(!(bz<($imul(bs,bu)))){$s=11;continue;}if(!((g===1))){$s=12;continue;}$s=13;continue;case 12:bk=($imul(bs,bo))+(ca=bz%bs,ca===ca?ca:$throwRuntimeError("integer divide by zero"))>>0;bl=($imul(bu,bn))+(cb=bz/bs,(cb===cb&&cb!==1/0&&cb!==-1/0)?cb>>0:$throwRuntimeError("integer divide by zero"))>>0;$s=14;continue;case 13:cc=$imul(au,bs);bk=(cd=bm%cc,cd===cd?cd:$throwRuntimeError("integer divide by zero"));bl=(ce=bm/cc,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"));bm=bm+(1)>>0;if(($imul(bk,8))>=c.width||($imul(bl,8))>=c.height){bz=bz+(1)>>0;$s=10;continue;}case 14:if(c.progressive){J.copy(b[0],(cf=(cg=c.progCoeffs,((bq<0||bq>=cg.length)?$throwRuntimeError("index out of range"):cg[bq])),ch=($imul(($imul(bl,au)),bs))+bk>>0,((ch<0||ch>=cf.$length)?$throwRuntimeError("index out of range"):cf.$array[cf.$offset+ch])));}else{J.copy(b[0],BJ.zero());}if(!((af===0))){$s=15;continue;}$s=16;continue;case 15:cl=c.refine(b[0],(ci=c.huff[1],cj=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cj<0||cj>=ci.length)?$throwRuntimeError("index out of range"):ci[cj])),ad,ae,(ck=ag,ck<32?(1<>0);$s=18;case 18:if($c){$c=false;cl=cl.$blk();}if(cl&&cl.$blk!==undefined){break s;}cm=cl;if(!($interfaceIsEqual(cm,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:return cm;case 20:$s=17;continue;case 16:cn=ad;if(cn===0){$s=21;continue;}$s=22;continue;case 21:cn=cn+(1)>>0;cr=c.decodeHuffman((cp=c.huff[0],cq=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).td,((cq<0||cq>=cp.length)?$throwRuntimeError("index out of range"):cp[cq])));$s=23;case 23:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}co=cr;cs=co[0];ct=co[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}if(cs>16){return new M("excessive DC component");}cv=c.receiveExtend(cs);$s=24;case 24:if($c){$c=false;cv=cv.$blk();}if(cv&&cv.$blk!==undefined){break s;}cu=cv;cw=cu[0];ct=cu[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq]=(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])+(cw)>>0));b[0][0]=((cx=ag,cx<32?(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])<>0);case 22:if(cn<=ae&&c.eobRun>0){$s=25;continue;}$s=26;continue;case 25:c.eobRun=c.eobRun-(1)<<16>>>16;$s=27;continue;case 26:da=(cy=c.huff[1],cz=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cz<0||cz>=cy.length)?$throwRuntimeError("index out of range"):cy[cz]));case 28:if(!(cn<=ae)){$s=29;continue;}dc=c.decodeHuffman(da);$s=30;case 30:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}db=dc;dd=db[0];de=db[1];if(!($interfaceIsEqual(de,$ifaceNil))){return de;}df=dd>>>4<<24>>>24;dg=(dd&15)>>>0;if(!((dg===0))){$s=31;continue;}$s=32;continue;case 31:cn=cn+((df>>0))>>0;if(cn>ae){$s=29;continue;}di=c.receiveExtend(dg);$s=34;case 34:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}dh=di;dj=dh[0];dk=dh[1];if(!($interfaceIsEqual(dk,$ifaceNil))){return dk;}(dm=((cn<0||cn>=P.length)?$throwRuntimeError("index out of range"):P[cn]),((dm<0||dm>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dm]=((dl=ag,dl<32?(dj<>0)));$s=33;continue;case 32:if(!((df===15))){$s=35;continue;}$s=36;continue;case 35:c.eobRun=((dn=df,dn<32?(1<>>16);if(!((df===0))){$s=37;continue;}$s=38;continue;case 37:dq=c.decodeBits((df>>0));$s=39;case 39:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}dp=dq;dr=dp[0];ds=dp[1];if(!($interfaceIsEqual(ds,$ifaceNil))){return ds;}c.eobRun=(c.eobRun|((dr<<16>>>16)))>>>0;case 38:c.eobRun=c.eobRun-(1)<<16>>>16;$s=29;continue;case 36:cn=cn+(15)>>0;case 33:cn=cn+(1)>>0;$s=28;continue;case 29:case 27:case 17:if(c.progressive){if(!((ae===63))||!((ag===0))){J.copy((dt=(du=c.progCoeffs,((bq<0||bq>=du.length)?$throwRuntimeError("index out of range"):du[bq])),dv=($imul(($imul(bl,au)),bs))+bk>>0,((dv<0||dv>=dt.$length)?$throwRuntimeError("index out of range"):dt.$array[dt.$offset+dv])),b[0]);bz=bz+(1)>>0;$s=10;continue;}}dw=0;while(true){if(!(dw<64)){break;}(dy=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dy<0||dy>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dy]=($imul((dx=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dx<0||dx>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dx])),((by.nilCheck,((dw<0||dw>=by.length)?$throwRuntimeError("index out of range"):by[dw])))))));dw=dw+(1)>>0;}K(b[0]);dz=AV.nil;ea=0;eb=dz;ec=ea;if(c.nComp===1){ed=$subslice(c.img1.Pix,($imul(8,((($imul(bl,c.img1.Stride))+bk>>0)))));ee=c.img1.Stride;eb=ed;ec=ee;}else{ef=bq;if(ef===0){eg=$subslice(c.img3.Y,($imul(8,((($imul(bl,c.img3.YStride))+bk>>0)))));eh=c.img3.YStride;eb=eg;ec=eh;}else if(ef===1){ei=$subslice(c.img3.Cb,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));ej=c.img3.CStride;eb=ei;ec=ej;}else if(ef===2){ek=$subslice(c.img3.Cr,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));el=c.img3.CStride;eb=ek;ec=el;}else if(ef===3){em=$subslice(c.blackPix,($imul(8,((($imul(bl,c.blackStride))+bk>>0)))));en=c.blackStride;eb=em;ec=en;}else{return new M("too many components");}}eo=0;while(true){if(!(eo<8)){break;}ep=$imul(eo,8);eq=$imul(eo,ec);er=0;while(true){if(!(er<8)){break;}et=(es=ep+er>>0,((es<0||es>=b[0].length)?$throwRuntimeError("index out of range"):b[0][es]));if(et<-128){et=0;}else if(et>127){et=255;}else{et=et+(128)>>0;}(eu=eq+er>>0,((eu<0||eu>=eb.$length)?$throwRuntimeError("index out of range"):eb.$array[eb.$offset+eu]=(et<<24>>>24)));er=er+(1)>>0;}eo=eo+(1)>>0;}bz=bz+(1)>>0;$s=10;continue;case 11:bp=bp+(1)>>0;$s=8;continue;case 9:bf=bf+(1)>>0;if(c.ri>0&&((ev=bf%c.ri,ev===ev?ev:$throwRuntimeError("integer divide by zero"))===0)&&bf<($imul(au,aw))){$s=40;continue;}$s=41;continue;case 40:ew=c.readFull($subslice(new AV(c.tmp),0,2));$s=42;case 42:if($c){$c=false;ew=ew.$blk();}if(ew&&ew.$blk!==undefined){break s;}ex=ew;if(!($interfaceIsEqual(ex,$ifaceNil))){$s=43;continue;}$s=44;continue;case 43:return ex;case 44:if(!((c.tmp[0]===255))||!((c.tmp[1]===bg))){return new L("bad RST marker");}bg=bg+(1)<<24>>>24;if(bg===216){bg=208;}R.copy(c.bits,new R.ptr(0,0,0));BP.copy(bh,BP.zero());c.eobRun=0;case 41:bo=bo+(1)>>0;$s=6;continue;case 7:bn=bn+(1)>>0;$s=4;continue;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOS};}$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.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.d=d;$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.e=e;$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.el=el;$f.em=em;$f.en=en;$f.eo=eo;$f.ep=ep;$f.eq=eq;$f.er=er;$f.es=es;$f.et=et;$f.eu=eu;$f.ev=ev;$f.ew=ew;$f.ex=ex;$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.processSOS=function(a){return this.$val.processSOS(a);};S.ptr.prototype.refine=function(a,b,c,d,e){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,$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;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:f=this;if(c===0){$s=1;continue;}$s=2;continue;case 1:if(!((d===0))){$panic(new $String("unreachable"));}h=f.decodeBit();$s=3;case 3: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))){return j;}if(i){a.nilCheck,a[0]=((a.nilCheck,a[0])|(e));}return $ifaceNil;case 2:k=c;if(f.eobRun===0){$s=4;continue;}$s=5;continue;case 4:case 6:if(!(k<=d)){$s=7;continue;}l=0;n=f.decodeHuffman(b);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}q=o>>>4<<24>>>24;r=(o&15)>>>0;s=r;if(s===0){$s=9;continue;}if(s===1){$s=10;continue;}$s=11;continue;case 9:if(!((q===15))){$s=13;continue;}$s=14;continue;case 13:f.eobRun=((t=q,t<32?(1<>>16);if(!((q===0))){$s=15;continue;}$s=16;continue;case 15:v=f.decodeBits((q>>0));$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!($interfaceIsEqual(x,$ifaceNil))){return x;}f.eobRun=(f.eobRun|((w<<16>>>16)))>>>0;case 16:$s=7;continue s;case 14:$s=12;continue;case 10:l=e;z=f.decodeBit();$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!($interfaceIsEqual(ab,$ifaceNil))){return ab;}if(!aa){l=-l;}$s=12;continue;case 11:return new L("unexpected Huffman code");case 12:ad=f.refineNonZeroes(a,k,d,(q>>0),e);$s=19;case 19:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;k=ac[0];p=ac[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}if(k>d){return new L("too many coefficients");}if(!((l===0))){(ae=((k<0||k>=P.length)?$throwRuntimeError("index out of range"):P[k]),a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae]=l));}k=k+(1)>>0;$s=6;continue;case 7:case 5:if(f.eobRun>0){$s=20;continue;}$s=21;continue;case 20:f.eobRun=f.eobRun-(1)<<16>>>16;ag=f.refineNonZeroes(a,k,d,-1,e);$s=22;case 22:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:return ah;case 24:case 21:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refine};}$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.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.refine=function(a,b,c,d,e){return this.$val.refine(a,b,c,d,e);};S.ptr.prototype.refineNonZeroes=function(a,b,c,d,e){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:f=this;case 1:if(!(b<=c)){$s=2;continue;}g=((b<0||b>=P.length)?$throwRuntimeError("index out of range"):P[b]);if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))===0){$s=3;continue;}$s=4;continue;case 3:if(d===0){$s=2;continue;}d=d-(1)>>0;b=b+(1)>>0;$s=1;continue;case 4:i=f.decodeBit();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[0,k];}if(!j){b=b+(1)>>0;$s=1;continue;}if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))>=0){a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))+(e)>>0));}else{a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))-(e)>>0));}b=b+(1)>>0;$s=1;continue;case 2:return[b,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refineNonZeroes};}$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;};S.prototype.refineNonZeroes=function(a,b,c,d,e){return this.$val.refineNonZeroes(a,b,c,d,e);};$ptrType(AF).prototype.init=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=$clone(a,AD);b=this;c=0;d=a.value;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);if((f>>0)>c){c=(f>>0);}e++;}b.$set((g=$makeSlice(BQ,(c+1>>0)),$subslice(new AF(g.$array),g.$offset,g.$offset+g.$length)));h=0;i=0;j=h;k=i;l=0;while(true){if(!(l<16)){break;}m=((l+1>>0)>>>0)<<24>>>0;n=0;while(true){if(!(n<(o=a.count,((l<0||l>=o.length)?$throwRuntimeError("index out of range"):o[l])))){break;}(p=b.$get(),q=(r=a.value,((k<0||k>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+k])),((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((m|j)>>>0)));j=j+(1)>>>0;k=k+(1)>>0;n=n+(1)<<24>>>24;}j=(s=(1),s<32?(j<>>0;l=l+(1)>>0;}};AH=function(){var $ptr,a,b,c,d;a=AE;b=0;while(true){if(!(b<4)){break;}c=b;d=$clone(((b<0||b>=a.length)?$throwRuntimeError("index out of range"):a[b]),AD);$indexPtr(AG,c,BR).init(d);b++;}};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];M.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BY.methods=[{prop:"ensureNBits",name:"ensureNBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$error],false)},{prop:"receiveExtend",name:"receiveExtend",pkg:"image/jpeg",typ:$funcType([$Uint8],[$Int32,$error],false)},{prop:"processDHT",name:"processDHT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decodeHuffman",name:"decodeHuffman",pkg:"image/jpeg",typ:$funcType([BW],[$Uint8,$error],false)},{prop:"decodeBit",name:"decodeBit",pkg:"image/jpeg",typ:$funcType([],[$Bool,$error],false)},{prop:"decodeBits",name:"decodeBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$Uint32,$error],false)},{prop:"fill",name:"fill",pkg:"image/jpeg",typ:$funcType([],[$error],false)},{prop:"unreadByteStuffedByte",name:"unreadByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[],false)},{prop:"readByte",name:"readByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readByteStuffedByte",name:"readByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readFull",name:"readFull",pkg:"image/jpeg",typ:$funcType([AV],[$error],false)},{prop:"ignore",name:"ignore",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processSOF",name:"processSOF",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDQT",name:"processDQT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDRI",name:"processDRI",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp0Marker",name:"processApp0Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp14Marker",name:"processApp14Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decode",name:"decode",pkg:"image/jpeg",typ:$funcType([A.Reader,$Bool],[B.Image,$error],false)},{prop:"applyBlack",name:"applyBlack",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"isRGB",name:"isRGB",pkg:"image/jpeg",typ:$funcType([],[$Bool],false)},{prop:"convertToRGB",name:"convertToRGB",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"makeImg",name:"makeImg",pkg:"image/jpeg",typ:$funcType([$Int,$Int],[],false)},{prop:"processSOS",name:"processSOS",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"refine",name:"refine",pkg:"image/jpeg",typ:$funcType([BX,BW,$Int32,$Int32,$Int32],[$error],false)},{prop:"refineNonZeroes",name:"refineNonZeroes",pkg:"image/jpeg",typ:$funcType([BX,$Int32,$Int32,$Int32,$Int32],[$Int32,$error],false)}];BR.methods=[{prop:"init",name:"init",pkg:"image/jpeg",typ:$funcType([AD],[],false)}];H.init([{prop:"nCodes",name:"nCodes",pkg:"image/jpeg",typ:$Int32,tag:""},{prop:"lut",name:"lut",pkg:"image/jpeg",typ:BF,tag:""},{prop:"vals",name:"vals",pkg:"image/jpeg",typ:BG,tag:""},{prop:"minCodes",name:"minCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"maxCodes",name:"maxCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"valsIndices",name:"valsIndices",pkg:"image/jpeg",typ:AW,tag:""}]);J.init($Int32,64);O.init([{prop:"h",name:"h",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"v",name:"v",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"c",name:"c",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"tq",name:"tq",pkg:"image/jpeg",typ:$Uint8,tag:""}]);R.init([{prop:"a",name:"a",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"m",name:"m",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"n",name:"n",pkg:"image/jpeg",typ:$Int32,tag:""}]);S.init([{prop:"r",name:"r",pkg:"image/jpeg",typ:A.Reader,tag:""},{prop:"bits",name:"bits",pkg:"image/jpeg",typ:R,tag:""},{prop:"bytes",name:"bytes",pkg:"image/jpeg",typ:BB,tag:""},{prop:"width",name:"width",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"img1",name:"img1",pkg:"image/jpeg",typ:AX,tag:""},{prop:"img3",name:"img3",pkg:"image/jpeg",typ:AY,tag:""},{prop:"blackPix",name:"blackPix",pkg:"image/jpeg",typ:AV,tag:""},{prop:"blackStride",name:"blackStride",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"ri",name:"ri",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nComp",name:"nComp",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"progressive",name:"progressive",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"jfif",name:"jfif",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransformValid",name:"adobeTransformValid",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransform",name:"adobeTransform",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"eobRun",name:"eobRun",pkg:"image/jpeg",typ:$Uint16,tag:""},{prop:"comp",name:"comp",pkg:"image/jpeg",typ:BC,tag:""},{prop:"progCoeffs",name:"progCoeffs",pkg:"image/jpeg",typ:BE,tag:""},{prop:"huff",name:"huff",pkg:"image/jpeg",typ:BI,tag:""},{prop:"quant",name:"quant",pkg:"image/jpeg",typ:BK,tag:""},{prop:"tmp",name:"tmp",pkg:"image/jpeg",typ:BL,tag:""}]);AD.init([{prop:"count",name:"count",pkg:"image/jpeg",typ:AU,tag:""},{prop:"value",name:"value",pkg:"image/jpeg",typ:AV,tag:""}]);AF.init($Uint32);$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=F.$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=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AG=AS.zero();I="short Huffman data";N="luma/chroma subsampling ratio";P=$toNativeArray($kindInt,[0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);T="missing 0xff00 sequence";AE=$toNativeArray($kindStruct,[new AD.ptr($toNativeArray($kindUint8,[0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125]),new AV([1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250])),new AD.ptr($toNativeArray($kindUint8,[0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119]),new AV([0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250]))]);W();AH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/perspective"]=(function(){var $pkg={},$init,A,B,C,D,F,I,J,K,L,M,N,O,E,G,H;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/jpeg"];D=$packages["log"];F=$pkg.parts=$newType(0,$kindStruct,"main.parts","parts","github.com/hajimehoshi/ebiten/examples/perspective",function(image_){this.$val=this;if(arguments.length===0){this.image=I.nil;return;}this.image=image_;});I=$ptrType(A.Image);J=$arrayType($Float64,3);K=$arrayType(J,2);L=$arrayType($Float64,5);M=$arrayType(L,4);N=$sliceType(A.ImagePart);O=$sliceType($emptyInterface);F.ptr.prototype.Len=function(){var $ptr,a,b,c;a=$clone(this,F);b=a.image.Size();c=b[1];return c;};F.prototype.Len=function(){return this.$val.Len();};F.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=0;c=0;d=0;e=0;f=$clone(this,F);g=f.image.Size();h=g[0];i=g[1];k=h+(j=($imul(a,3))/4,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(l=((m=($imul(((i-a>>0)),3))/4,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero")))/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"));o=n;p=a;q=n+k>>0;r=a+1>>0;b=o;c=p;d=q;e=r;return[b,c,d,e];};F.prototype.Dst=function(a){return this.$val.Dst(a);};F.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=0;d=0;e=0;f=$clone(this,F);g=f.image.Size();h=g[0];i=0;j=a;k=h;l=a+1>>0;b=i;c=j;d=k;e=l;return[b,c,d,e];};F.prototype.Src=function(a){return this.$val.Src(a);};G=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=new A.DrawImageOptions.ptr(new F.ptr(E),new A.GeoM.ptr(false,K.zero()),new A.ColorM.ptr(false,M.zero()),N.nil);c=E.Size();d=c[0];e=c[1];f=d+e*0.75;b.GeoM.Translate(-f/2,-e/2);b.GeoM.Translate(160,120);g=a.DrawImage(E,b);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;return $ifaceNil;}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.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};H=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=$ifaceNil;c=B.NewImageFromFile("images/gophers.jpg",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;E=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new O([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:d=A.Run(G,320,240,2,"Perspective (Ebiten Demo)");$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=D.Fatal(new O([e]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$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;};F.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];F.init([{prop:"image",name:"image",pkg:"github.com/hajimehoshi/ebiten/examples/perspective",typ:I,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;}E=I.nil;if($pkg===$mainPkg){$s=5;continue;}$s=6;continue;case 5:$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 6:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/perspective"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=perspective.js.map diff --git a/_docs/public/examples/perspective.js.map b/_docs/public/examples/perspective.js.map deleted file mode 100644 index 58ba4855e..000000000 --- a/_docs/public/examples/perspective.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"perspective.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/image/jpeg/huffman.go","/image/jpeg/idct.go","/image/jpeg/reader.go","/image/jpeg/scan.go","/image/jpeg/writer.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/perspective/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;mfCnQA,8B,8C,WA0CC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;;+QCU/B,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;i1GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;sQC1BA,+D,gDAIA,kC,gDAQA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,qE,mBC6nBC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;smFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,yBCQA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;kZ,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCzPzB,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;+0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAgBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,wJAIa,cACb,0CACA,IACA,UACC,oMACA,IACD,gBACC,oMACA,oMACD,gBACC,IACA,oMACD,gBACC,oMACA,IACD,gBACC,0MACA,gN,MAGA,IACA,I,CAED,2CACA,2CACA,2CACA,qBACA,yG,msZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eCzJoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;6hDCrEK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;8+ICpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,weAoDI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,g1BCgBA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;qgB,4F,4F,4F,4F,4F,4F,4F,4F,4F;4Q;+5CCxvBK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;2vBCpcA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,qY,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G;yxIChBK,OACL,OACC,uH,sC,+BAGE,gB,CAED,S,CAED,yCACA,yB,iBAEC,a,MAEA,0C,C,gBAGA,c,C,qBAGF,iB,ygBAKK,OACL,iD,OACI,0K,OACF,Y,O,OAGF,8BACA,2CACA,yBACA,sE,gBAEC,4C,CAED,oB,69BAKK,OACL,iC,SAEE,qC,CAEE,8L,OACF,S,OAED,wB,QAEC,6B,CAED,oB,6BAEC,6B,CAED,uJAKA,WACI,YACJ,2CACC,8JACA,0F,K,iBAGA,8C,C,iBAGA,mD,CAED,+B,QAEC,qC,CAEE,qM,OACF,S,OAID,gDACC,+E,KAEG,gBACA,kCACH,+BACI,qGAMH,qDACA,wIACI,8EACH,qGADgC,mB,CAGjC,YACA,YAZiC,a,CAFF,Y,CAmB7B,sBACJ,2H,WAEE,2FACA,2FACA,8F,MAEA,2FACA,0GACA,8FACA,cACA,c,CAED,gC,M,qBAGF,iB,i+BAKK,O,iBAEJ,+C,CAGD,4C,OACI,qK,O,uEAED,Y,C,iCAMA,0B,CAED,c,O,OAGC,mJ,eACF,6BACA,8BACA,2CACA,8C,CAGF,OACK,kDACH,+C,OACI,yK,QACF,Y,Q,Q,uCAID,Q,CAED,yBACA,2C,yFAEC,mR,CAED,2BAd8C,W,qBAgB/C,oC,6kBAGK,OACL,8C,OACI,qK,OACF,gB,O,OAGF,qCACA,yBACA,2CACA,oB,8dAGK,OACL,4C,OACI,qK,OACF,Y,O,OAGF,sDACA,sDACA,yBACA,iDACA,oB,2bC3KI,kCACH,a,irBAIC,mGACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FAbiB,W,S,CAkBlB,+GACA,oGACA,6FACA,kGACA,kGACA,kGACA,kGACA,kGAGA,2BACA,0BACA,0BACA,4BACA,yBACA,0BAGA,UACA,WACA,0BACA,uBACA,yBACA,WACA,cACA,YACA,cAGA,YACA,cACA,UACA,WACA,6CACA,8CAGA,iHACA,iHACA,iHACA,kHACA,kHACA,iHACA,iHACA,iHA9DkB,W,CAkEf,oCAMH,qHACA,0GACA,oGACA,oGACA,mGACA,oGACA,oGACA,oGAGA,kCACA,oCACA,oCACA,mCACA,mCACA,oCAGA,YACA,cACA,mCACA,oCACA,oCACA,YACA,cACA,YACA,cAGA,YACA,cACA,YACA,cACA,8CACA,8CAGA,oHACA,oHACA,qHACA,qHACA,qHACA,qHACA,qHACA,qHAlDkB,a,C,0CCrHd,YAAgC,gC,qHAKhC,YAAqC,qC,gXAsHrC,O,+BAEJ,iE,C,gBAKA,mHACA,mHACA,gC,CAGD,kJACA,2B,QAEC,Y,CAED,S,0SAQK,OACL,6CACA,sB,gBAEC,2CACA,yBACA,2C,C,wYAMI,OACL,mDACI,6J,O,4B,O,qBAIJ,iGACA,2BACA,sB,oC,osBASK,O,gCAGJ,iGACA,2BACA,sB,iB,4B,C,4G,mC,CAOA,2BACA,sB,sC,CAID,sBAEA,4G,sC,4B,CAIA,sB,iB,oC,CAKA,4G,sC,4B,CAIA,sB,e,mC,C,wC,2nBASK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,mEACA,iBACA,2B,kBAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,8bAIK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,yB,QAEC,I,CAED,2BACA,W,UAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,isBAIK,O,qBAEJ,qC,CAED,IACA,UACC,UACD,iBACC,UACD,iBACC,U,MAEA,qC,CAEE,6L,OACF,S,O,sBAIA,0B,CAED,gDACA,+C,iCAEC,qC,CAGG,wCACH,iLAGI,kC,sKAEF,8C,CAFiB,W,CAMnB,kL,uFAEC,6B,CAGD,mGACA,oD,uBAEC,8C,C,qBAGA,gB,CAED,UACA,UAYC,gBAED,gBAQC,KACA,W,UAKE,gB,CAEF,iB,6KAEE,gB,CAEF,iB,+CAEE,gB,C,CAIH,gBAUC,KACA,W,6BAEE,gB,CAEF,yB,gBAEE,gB,CAEF,iB,+CAEE,gB,C,C,CAKH,qFACA,qFA3FwB,W,CA6FzB,iB,k3BAIK,OAEL,iCACC,WACA,4G,sCAEC,S,CAED,a,QAEC,6B,CAED,iFAGA,O,SAEE,gB,CAED,YACG,+L,OACF,S,QAED,wHACC,wO,K,cAEF,O,UAEE,gB,CAED,aACG,mM,QACF,S,QAED,wHACC,+W,K,qBArBD,6B,O,qB,eA0BD,qC,CAED,iB,6mBAIK,O,eAEJ,qC,CAEE,6L,OACF,S,OAED,4CACA,iB,idAGK,OACL,qC,OACC,8G,OAEE,6L,OACF,S,OAED,WAEA,0FAEA,qC,OACC,kH,OAED,iB,qfAGK,OACL,sC,OACC,8G,OAEE,8L,OACF,S,OAED,Y,2FAGC,2BACA,2B,CAGD,qC,OACC,kH,OAED,iB,kqBAIK,OACL,MAGG,6L,OACF,oB,O,6CAGA,8C,CAID,OACC,0H,sCAEC,oB,CAED,iDAqBC,kBACA,mH,sCAEC,oB,C,qBAGF,WACA,yC,QAEC,c,QAED,uCAGC,8G,sCAEC,oB,C,uB,YAID,c,CAED,kD,QAOC,c,QAKE,iM,QACF,oB,QAED,gD,QAEC,gD,CAGD,yOACA,QACC,sBACA,mG,cAEC,oB,C,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,Q,MAEE,4B,CAED,mG,eACD,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,0G,eACD,QACC,2G,uBAEA,uF,QACC,+F,e,QAEA,0B,uBAEA,0B,Q,Q,sCAID,oB,C,qB,uBAID,yB,C,uB,2BAIC,sB,oBAEA,wB,CAED,yB,CAED,8C,igBAUK,O,2BAEJ,mG,C,8BAYA,sCACA,eACA,8BACI,0DACC,+DACH,gRADoD,2BADH,kCAKnD,4E,CAYD,sCACA,eAEA,mLASA,0HACC,6MACI,iEACH,iB,OAEC,iG,CAEG,uEACH,iB,OAEC,iG,CAED,yPALoD,mCALH,0C,KAcpD,oB,gHAGK,O,WAEJ,a,C,kDAKA,Y,CAED,iE,wKAGK,OACL,2GACA,sCACA,eACI,8CACH,yBACA,4BACA,4BACI,+DACH,qOACA,yTACA,6TACA,sIAJsD,W,CAJf,W,CAWzC,oB,iRAKI,2KACJ,oH,oWAMI,2KACD,4K,OACF,0C,OAED,UACA,UACC,iEAKD,gBACC,e,cAEC,c,CAED,uDAKD,gBACC,iE,CAMD,oE,+KAIA,wC,mFCrxBK,O,gBAEJ,+CACA,gEACA,O,CAGD,cACA,cACA,iGACA,iGACI,IACJ,cACA,WACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,I,MAEA,mC,CAED,wEACA,gE,gBAGC,oCACA,mFACA,oC,C,++DAKI,O,gBAEJ,mC,C,4GAGA,qC,CAEE,6L,OACF,S,OAED,gB,iCAEC,kE,CAEG,YAKJ,IACI,kCACH,mGACA,KACA,qL,YAEE,I,C,K,QAID,2C,CAED,0FAMI,kC,gKAEF,4C,CAFiB,W,CAKnB,kLAEA,oL,4EAEC,6B,CAED,gL,4EAEC,6B,CA9BqB,W,C,oBAoCtB,iD,CAmBD,2C,kBAEC,gHACA,gHACA,gIACA,4H,2CAEC,8C,C,4BAGA,wE,C,sCAGA,oD,C,CAKF,0CACA,8IACA,+I,qCAEC,iB,C,kBAGI,oCACH,mF,uGAEC,sT,CAHqB,a,C,CAQxB,gCACA,wBAGC,eACA,aAGA,sBACA,KAEG,wCACC,wCACC,uCACH,mFACA,yFACA,yFACA,kLACI,sDA0BH,8C,QACC,wFACA,kH,uBAEA,gBACA,sEACA,gGACA,a,oDAjCqB,a,e,C,Q,kBAyCrB,2O,MAEA,uB,CAGD,+C,QACI,mX,QACF,U,Q,uBAGD,MACA,0C,QACC,aAEA,gS,uCAEC,U,C,UAGA,uC,CAED,gI,uCAEC,U,CAED,0JACA,2G,QAGD,sD,QACC,+B,uBAGA,sKACA,sCACC,gI,uCAEC,U,CAED,mBACA,eACA,+C,QACC,mB,UAEC,e,CAED,gI,uCAEC,U,CAED,qL,uBAEA,gD,QACC,4CACA,+C,QACC,kI,uCAEC,U,CAED,wC,QAED,+BACA,e,QAED,c,QA9BmB,a,uB,Q,Q,kB,8BAuCrB,2OAlHoB,a,e,C,CA6HlB,qCACH,+YAD8B,a,CAG/B,QACA,2B,gBAEC,qG,MAEA,MACA,WACC,qGACD,iBACC,sGACD,iBACC,sGACD,iBACC,qG,MAEA,oC,C,CAIE,oCACH,eACA,gBACI,oCACH,6F,YAEC,K,iBAEA,O,MAEA,e,CAED,uHATkB,a,CAHD,a,CAnJG,a,uBALD,a,qBAyKvB,aACA,yI,QAGI,yM,QACF,U,Q,4CAGA,+B,CAED,mB,aAEC,O,CAGD,gCAEA,sBAEA,W,QA7LqB,a,qBADD,a,qBAmMvB,iB,m/DAKK,OAEL,uC,O,eAEE,mC,CAED,6G,sCAEC,S,C,MAGA,wC,CAED,iB,OAID,IACA,8C,OAEC,kCACC,IACA,kH,sCAEC,S,CAED,iBACA,aAEA,sEACA,OACC,+C,QACC,wCACA,8C,QACC,sH,sCAEC,S,CAED,uC,QAED,gB,Q,eAEF,QACC,IACA,iH,uCAEC,U,C,QAGA,K,C,uBAGD,wC,QAGD,4I,sCAEC,S,C,QAGA,sC,C,eAGA,2J,CA3CmB,W,qB,OA+CtB,8C,QACC,+BACG,uM,QACF,U,Q,QAGF,iB,0uBAKK,OACL,kCACC,qEACA,qH,O,UAEE,c,CAED,WANmB,W,c,OASpB,6G,sCAEC,Y,C,OAXmB,W,c,C,uFAiBnB,uK,MAEA,uK,CAnBmB,W,qBAsBrB,oB,oXClSyB,eAApB,OACL,IACA,2I,aAEE,S,C,KAGF,8FACA,gBACI,mCACH,yBACI,+GACH,iNACA,YACA,WAHkC,iB,CAKnC,4BAP6B,W,C,iCAe9B,2HACC,2B,K,8iK,4F,4F,4F,4F,4F,yG,uB,kC,mN,4B,iiD,I;srBCjJD,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;mrBCxQK,iBACL,wBACA,S,mJAGK,iBACL,+BACA,uGACA,gM,0D,yIAIK,iBACL,wB,qD,qSAKA,iHAGA,yBACA,WACA,4BACA,0BACA,gGACA,iB,+VAII,YACJ,0IACA,mE,OACC,sG,OAEE,mM,OACF,sG,O,4oB,4F,4F,4F,oG,iD,O,sF,mB"} diff --git a/_docs/public/examples/piano.js b/_docs/public/examples/piano.js deleted file mode 100644 index a30165cc0..000000000 --- a/_docs/public/examples/piano.js +++ /dev/null @@ -1,61 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BI,BK,BL,BM,BN,BQ,E,J,K,BJ;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BI=$pkg.Reader=$newType(0,$kindStruct,"bytes.Reader","Reader","bytes",function(s_,i_,prevRune_){this.$val=this;if(arguments.length===0){this.s=BL.nil;this.i=new $Int64(0,0);this.prevRune=0;return;}this.s=s_;this.i=i_;this.prevRune=prevRune_;});BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);BQ=$ptrType(BI);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BI.ptr.prototype.Len=function(){var $ptr,d,e,f,g,h,i;d=this;if((e=d.i,f=new $Int64(0,d.s.$length),(e.$high>f.$high||(e.$high===f.$high&&e.$low>=f.$low)))){return 0;}return((g=(h=new $Int64(0,d.s.$length),i=d.i,new $Int64(h.$high-i.$high,h.$low-i.$low)),g.$low+((g.$high>>31)*4294967296))>>0);};BI.prototype.Len=function(){return this.$val.Len();};BI.ptr.prototype.Size=function(){var $ptr,d;d=this;return new $Int64(0,d.s.$length);};BI.prototype.Size=function(){return this.$val.Size();};BI.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(d.$length===0){h=0;i=$ifaceNil;e=h;f=i;return[e,f];}if((j=g.i,k=new $Int64(0,g.s.$length),(j.$high>k.$high||(j.$high===k.$high&&j.$low>=k.$low)))){l=0;m=B.EOF;e=l;f=m;return[e,f];}g.prevRune=-1;e=$copySlice(d,$subslice(g.s,$flatten64(g.i)));g.i=(n=g.i,o=new $Int64(0,e),new $Int64(n.$high+o.$high,n.$low+o.$low));return[e,f];};BI.prototype.Read=function(d){return this.$val.Read(d);};BI.ptr.prototype.ReadAt=function(d,e){var $ptr,d,e,f,g,h,i,j,k,l,m;f=0;g=$ifaceNil;h=this;if((e.$high<0||(e.$high===0&&e.$low<0))){i=0;j=A.New("bytes.Reader.ReadAt: negative offset");f=i;g=j;return[f,g];}if((k=new $Int64(0,h.s.$length),(e.$high>k.$high||(e.$high===k.$high&&e.$low>=k.$low)))){l=0;m=B.EOF;f=l;g=m;return[f,g];}f=$copySlice(d,$subslice(h.s,$flatten64(e)));if(fh.$high||(g.$high===h.$high&&g.$low>=h.$low)))){i=0;j=B.EOF;d=i;e=j;return[d,e];}d=(k=f.s,l=f.i,(($flatten64(l)<0||$flatten64(l)>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+$flatten64(l)]));f.i=(m=f.i,n=new $Int64(0,1),new $Int64(m.$high+n.$high,m.$low+n.$low));return[d,e];};BI.prototype.ReadByte=function(){return this.$val.ReadByte();};BI.ptr.prototype.UnreadByte=function(){var $ptr,d,e,f,g;d=this;d.prevRune=-1;if((e=d.i,(e.$high<0||(e.$high===0&&e.$low<=0)))){return A.New("bytes.Reader.UnreadByte: at beginning of slice");}d.i=(f=d.i,g=new $Int64(0,1),new $Int64(f.$high-g.$high,f.$low-g.$low));return $ifaceNil;};BI.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BI.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;d=0;e=0;f=$ifaceNil;g=this;if((h=g.i,i=new $Int64(0,g.s.$length),(h.$high>i.$high||(h.$high===i.$high&&h.$low>=i.$low)))){g.prevRune=-1;j=0;k=0;l=B.EOF;d=j;e=k;f=l;return[d,e,f];}g.prevRune=((m=g.i,m.$low+((m.$high>>31)*4294967296))>>0);p=(n=g.s,o=g.i,(($flatten64(o)<0||$flatten64(o)>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+$flatten64(o)]));if(p<128){g.i=(q=g.i,r=new $Int64(0,1),new $Int64(q.$high+r.$high,q.$low+r.$low));s=(p>>0);t=1;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];}v=C.DecodeRune($subslice(g.s,$flatten64(g.i)));d=v[0];e=v[1];g.i=(w=g.i,x=new $Int64(0,e),new $Int64(w.$high+x.$high,w.$low+x.$low));return[d,e,f];};BI.prototype.ReadRune=function(){return this.$val.ReadRune();};BI.ptr.prototype.UnreadRune=function(){var $ptr,d;d=this;if(d.prevRune<0){return A.New("bytes.Reader.UnreadRune: previous operation was not ReadRune");}d.i=new $Int64(0,d.prevRune);d.prevRune=-1;return $ifaceNil;};BI.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BI.ptr.prototype.Seek=function(d,e){var $ptr,d,e,f,g,h,i,j;f=this;f.prevRune=-1;g=new $Int64(0,0);h=e;if(h===0){g=d;}else if(h===1){g=(i=f.i,new $Int64(i.$high+d.$high,i.$low+d.$low));}else if(h===2){g=(j=new $Int64(0,f.s.$length),new $Int64(j.$high+d.$high,j.$low+d.$low));}else{return[new $Int64(0,0),A.New("bytes.Reader.Seek: invalid whence")];}if((g.$high<0||(g.$high===0&&g.$low<0))){return[new $Int64(0,0),A.New("bytes.Reader.Seek: negative position")];}f.i=g;return[g,$ifaceNil];};BI.prototype.Seek=function(d,e){return this.$val.Seek(d,e);};BI.ptr.prototype.WriteTo=function(d){var $ptr,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;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:e=new $Int64(0,0);f=$ifaceNil;g=this;g.prevRune=-1;if((h=g.i,i=new $Int64(0,g.s.$length),(h.$high>i.$high||(h.$high===i.$high&&h.$low>=i.$low)))){j=new $Int64(0,0);k=$ifaceNil;e=j;f=k;return[e,f];}l=$subslice(g.s,$flatten64(g.i));n=d.Write(l);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f=m[1];if(o>l.$length){$panic(new $String("bytes.Reader.WriteTo: invalid Write count"));}g.i=(p=g.i,q=new $Int64(0,o),new $Int64(p.$high+q.$high,p.$low+q.$low));e=new $Int64(0,o);if(!((o===l.$length))&&$interfaceIsEqual(f,$ifaceNil)){f=B.ErrShortWrite;}return[e,f];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};BI.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};BJ=function(d){var $ptr,d;return new BI.ptr(d,new $Int64(0,0),-1);};$pkg.NewReader=BJ;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];BQ.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([BL,$Int64],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,tag:""}]);BI.init([{prop:"s",name:"s",pkg:"bytes",typ:BL,tag:""},{prop:"i",name:"i",pkg:"bytes",typ:$Int64,tag:""},{prop:"prevRune",name:"prevRune",pkg:"bytes",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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,P,Q,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;P=function(ao){var $ptr,ao;return $parseFloat(B.exp(ao));};$pkg.Exp=P;Q=function(ao){var $ptr,ao;return $parseFloat(B.pow(2,ao));};$pkg.Exp2=Q;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,H,I,AV,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;H=function(e,f){var $ptr,e,f;return $parseInt(e.lastIndexOf(f))>>0;};$pkg.LastIndex=H;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;AV=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m;if(e.$length===0){return"";}if(e.$length===1){return(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0]);}g=$imul(f.length,((e.$length-1>>0)));h=0;while(true){if(!(h=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+h]).length)>>0;h=h+(1)>>0;}i=$makeSlice(CA,g);j=$copyString(i,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0]));k=$subslice(e,1);l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);j=j+($copyString($subslice(i,j),f))>>0;j=j+($copyString($subslice(i,j),m))>>0;l++;}return $bytesToString(i);};$pkg.Join=AV;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CD,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CD=function(c){var $ptr,c;return 47===c;};$pkg.IsPathSeparator=CD;CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F,O,AR,AU,P,R,U,AJ,AN;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];O=$pkg.lazybuf=$newType(0,$kindStruct,"filepath.lazybuf","lazybuf","path/filepath",function(path_,buf_,w_,volAndPath_,volLen_){this.$val=this;if(arguments.length===0){this.path="";this.buf=AR.nil;this.w=0;this.volAndPath="";this.volLen=0;return;}this.path=path_;this.buf=buf_;this.w=w_;this.volAndPath=volAndPath_;this.volLen=volLen_;});AR=$sliceType($Uint8);AU=$ptrType(O);O.ptr.prototype.index=function(a){var $ptr,a,b,c;b=this;if(!(b.buf===AR.nil)){return(c=b.buf,((a<0||a>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+a]));}return b.path.charCodeAt(a);};O.prototype.index=function(a){return this.$val.index(a);};O.ptr.prototype.append=function(a){var $ptr,a,b,c,d;b=this;if(b.buf===AR.nil){if(b.w>0;return;}b.buf=$makeSlice(AR,b.path.length);$copyString(b.buf,b.path.substring(0,b.w));}(c=b.buf,d=b.w,((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=a));b.w=b.w+(1)>>0;};O.prototype.append=function(a){return this.$val.append(a);};O.ptr.prototype.string=function(){var $ptr,a;a=this;if(a.buf===AR.nil){return a.volAndPath.substring(0,(a.volLen+a.w>>0));}return a.volAndPath.substring(0,a.volLen)+$bytesToString($subslice(a.buf,0,a.w));};O.prototype.string=function(){return this.$val.string();};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=a;c=AJ(a);a=a.substring(c);if(a===""){if(c>1&&!((b.charCodeAt(1)===58))){return R(b);}return b+".";}d=B.IsPathSeparator(a.charCodeAt(0));e=a.length;f=new O.ptr(a,AR.nil,0,b,c);g=0;h=0;i=g;j=h;if(d){f.append(47);k=1;l=1;i=k;j=l;}while(true){if(!(i>0;}else if((a.charCodeAt(i)===46)&&(((i+1>>0)===e)||B.IsPathSeparator(a.charCodeAt((i+1>>0))))){i=i+(1)>>0;}else if((a.charCodeAt(i)===46)&&(a.charCodeAt((i+1>>0))===46)&&(((i+2>>0)===e)||B.IsPathSeparator(a.charCodeAt((i+2>>0))))){i=i+(2)>>0;if(f.w>j){f.w=f.w-(1)>>0;while(true){if(!(f.w>j&&!B.IsPathSeparator(f.index(f.w)))){break;}f.w=f.w-(1)>>0;}}else if(!d){if(f.w>0){f.append(47);}f.append(46);f.append(46);j=f.w;}}else{if(d&&!((f.w===1))||!d&&!((f.w===0))){f.append(47);}while(true){if(!(i>0;}}}if(f.w===0){f.append(46);}return R(f.string());};$pkg.Clean=P;R=function(a){var $ptr,a;return a;return E.Replace(a,"/","/",-1);};$pkg.FromSlash=R;U=function(a){var $ptr,a;return AN(a);};$pkg.Join=U;AJ=function(a){var $ptr,a;return 0;};AN=function(a){var $ptr,a,b,c,d,e;b=a;c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);if(!(e==="")){return P(E.Join($subslice(a,d),"/"));}c++;}return"";};AU.methods=[{prop:"index",name:"index",pkg:"path/filepath",typ:$funcType([$Int],[$Uint8],false)},{prop:"append",name:"append",pkg:"path/filepath",typ:$funcType([$Uint8],[],false)},{prop:"string",name:"string",pkg:"path/filepath",typ:$funcType([],[$String],false)}];O.init([{prop:"path",name:"path",pkg:"path/filepath",typ:$String,tag:""},{prop:"buf",name:"buf",pkg:"path/filepath",typ:AR,tag:""},{prop:"w",name:"w",pkg:"path/filepath",typ:$Int,tag:""},{prop:"volAndPath",name:"volAndPath",pkg:"path/filepath",typ:$String,tag:""},{prop:"volLen",name:"volLen",pkg:"path/filepath",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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R,I,J;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);I=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,$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;$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);c=[c];d=Z.nil;c[0]=$ifaceNil;e=A.NewBuffer($makeSlice(Z,0,$flatten64(b)));$deferred.push([(function(c){return function(){var $ptr,f,g,h,i;f=$recover();if($interfaceIsEqual(f,$ifaceNil)){return;}g=$assertType(f,$error,true);h=g[0];i=g[1];if(i&&$interfaceIsEqual(h,A.ErrTooLarge)){c[0]=h;}else{$panic(f);}};})(c),[]]);g=e.ReadFrom(a);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;c[0]=f[1];h=e.Bytes();i=c[0];d=h;c[0]=i;return[d,c[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d,c[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:I};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};J=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=I(a,new $Int64(0,512));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ReadAll=J;$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,E,I,M,N,O,D,H,F,G,J,K,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];E=$pkg.ReadSeekCloser=$newType(8,$kindInterface,"audio.ReadSeekCloser","ReadSeekCloser","github.com/hajimehoshi/ebiten/internal/audio",null);I=$pkg.audioProcessor=$newType(0,$kindStruct,"audio.audioProcessor","audioProcessor","github.com/hajimehoshi/ebiten/internal/audio",function(src_,sampleRate_,position_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;this.sampleRate=0;this.position=0;return;}this.src=src_;this.sampleRate=sampleRate_;this.position=position_;});M=$sliceType($Int16);N=$sliceType($Uint8);O=$ptrType(I);F=function(){var $ptr;L();};$pkg.Init=F;G=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=K(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Play=G;J=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=$makeSlice(M,(b=a.$length/4,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero")));e=$makeSlice(M,(d=a.$length/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")));f=0;while(true){if(!(f<(g=a.$length/4,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")))){break;}((f<0||f>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+f]=(((h=$imul(4,f),((h<0||h>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+h]))<<16>>16)|(((i=($imul(4,f))+1>>0,((i<0||i>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+i]))<<16>>16)<<8<<16>>16)));((f<0||f>=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]=(((j=($imul(4,f))+2>>0,((j<0||j>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+j]))<<16>>16)|(((k=($imul(4,f))+3>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))<<16>>16)<<8<<16>>16)));f=f+(1)>>0;}return[c,e];};I.ptr.prototype.play=function(){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:a=this;c=B.ReadAll(a.src);$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))){return e;}if(d.$length===0){return $ifaceNil;}g=H.createBuffer(2,(f=d.$length/4,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")),a.sampleRate);h=g.getChannelData(0);i=g.getChannelData(1);j=J(d);k=j[0];l=j[1];m=0;while(true){if(!(m=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+m])/32768;i[m]=((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m])/32768;m=m+(1)>>0;}n=H.createBufferSource();n.buffer=g;n.connect(H.destination);n.start(a.position);a.position=a.position+($parseFloat(g.duration));return $ifaceNil;}return;}if($f===undefined){$f={$blk:I.ptr.prototype.play};}$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;};I.prototype.play=function(){return this.$val.play();};K=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=new I.ptr(a,b,$parseFloat(H.currentTime));d=c.play();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return d;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};O.methods=[{prop:"play",name:"play",pkg:"github.com/hajimehoshi/ebiten/internal/audio",typ:$funcType([],[$error],false)}];E.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}]);I.init([{prop:"src",name:"src",pkg:"github.com/hajimehoshi/ebiten/internal/audio",typ:E,tag:""},{prop:"sampleRate",name:"sampleRate",pkg:"github.com/hajimehoshi/ebiten/internal/audio",typ:$Int,tag:""},{prop:"position",name:"position",pkg:"github.com/hajimehoshi/ebiten/internal/audio",typ:$Float64,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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AO,AQ;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,E,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);E=function(a){var $ptr,a,b;return(b=L.keyPressed,((a<0||a>=b.length)?$throwRuntimeError("index out of range"):b[a]));};$pkg.IsKeyPressed=E;M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,AY,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AG,AH,AM,AN,AQ,AR,BB,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});AY=$pkg.Key=$newType(4,$kindInt,"ebiten.Key","Key","github.com/hajimehoshi/ebiten",null);BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AG=function(a,b,c){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];e=[e];e[0]=BL.nil;d[0]=$ifaceNil;$r=AB((function(a,b,c,d,e){return function $b(f){var $ptr,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;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=BP.nil;h=BO.nil;i=D.NewTexture(f,a[0],b[0],AA(f,c[0]));g=i[0];d[0]=i[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(f,g);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;h=j[0];d[0]=j[1];if(!($interfaceIsEqual(d[0],$ifaceNil))){return;}e[0]=new AE.ptr(h,g,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(d[0],$ifaceNil))){return[BL.nil,d[0]];}f=e[0].Clear();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return[BL.nil,g];case 4:I.SetFinalizer(e[0],new BT($methodExpr(BL,"Dispose")));return[e[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AG};}$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.NewImage=AG;AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AR=function(a){var $ptr,a;return B.IsKeyPressed((a>>0));};$pkg.IsKeyPressed=AR;BB=function(){var $ptr;return BA.fps;};$pkg.CurrentFPS=BB;BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J,L,M,AA,AB,AC,AD,N,T,K,O,P,Q;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$packages["time"];L=$pkg.asset=$newType(0,$kindStruct,"assets.asset","asset","github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",function(bytes_,info_){this.$val=this;if(arguments.length===0){this.bytes=AA.nil;this.info=$ifaceNil;return;}this.bytes=bytes_;this.info=info_;});M=$pkg.bindata_file_info=$newType(0,$kindStruct,"assets.bindata_file_info","bindata_file_info","github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",function(name_,size_,mode_,modTime_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new J.Time.ptr(new $Int64(0,0),0,AC.nil);return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;});AA=$sliceType($Uint8);AB=$ptrType(L);AC=$ptrType(J.Location);AD=$sliceType($emptyInterface);K=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:b=Q("text.png");$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;c=a[0];d=a[1];if(!($interfaceIsEqual(d,$ifaceNil))){return[$ifaceNil,d];}f=B.Decode(A.NewBuffer(c));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[2];if(!($interfaceIsEqual(d,$ifaceNil))){return[$ifaceNil,d];}return[g,$ifaceNil];}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.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.TextImage=K;M.ptr.prototype.Name=function(){var $ptr,a;a=$clone(this,M);return a.name;};M.prototype.Name=function(){return this.$val.Name();};M.ptr.prototype.Size=function(){var $ptr,a;a=$clone(this,M);return a.size;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.Mode=function(){var $ptr,a;a=$clone(this,M);return a.mode;};M.prototype.Mode=function(){return this.$val.Mode();};M.ptr.prototype.ModTime=function(){var $ptr,a;a=$clone(this,M);return a.modTime;};M.prototype.ModTime=function(){return this.$val.ModTime();};M.ptr.prototype.IsDir=function(){var $ptr,a;a=$clone(this,M);return false;};M.prototype.IsDir=function(){return this.$val.IsDir();};M.ptr.prototype.Sys=function(){var $ptr,a;a=$clone(this,M);return $ifaceNil;};M.prototype.Sys=function(){return this.$val.Sys();};O=function(){var $ptr;return[N,$ifaceNil];};P=function(){var $ptr,a,b,c,d,e;a=O();b=a[0];c=a[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[AB.nil,c];}d=new M.ptr("text.png",new $Int64(0,2058),420,$clone(J.Unix(new $Int64(0,1420820510),new $Int64(0,0)),J.Time));e=new L.ptr(b,new d.constructor.elem(d));return[e,$ifaceNil];};Q=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=I.Replace(a,"\\","/",-1);c=(d=T[$String.keyFor(b)],d!==undefined?[d.v,true]:[$throwNilPointerError,false]);e=c[0];f=c[1];if(f){$s=1;continue;}$s=2;continue;case 1:h=e();$s=3;case 3: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=4;continue;}$s=5;continue;case 4:k=D.Errorf("Asset %s can't read by error: %v",new AD([new $String(a),j]));$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=7;case 7:return[AA.nil,k];case 5:return[i.bytes,$ifaceNil];case 2:l=D.Errorf("Asset %s not found",new AD([new $String(a)]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=9;case 9:return[AA.nil,l];}return;}if($f===undefined){$f={$blk:Q};}$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.Asset=Q;M.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[F.FileMode],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[J.Time],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];L.init([{prop:"bytes",name:"bytes",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:AA,tag:""},{prop:"info",name:"info",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:F.FileInfo,tag:""}]);M.init([{prop:"name",name:"name",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:$String,tag:""},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:F.FileMode,tag:""},{prop:"modTime",name:"modTime",pkg:"github.com/hajimehoshi/ebiten/ebitenutil/internal/assets",typ:J.Time,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;}$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;}N=new AA($stringToBytes("\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\xC0\x00\x00\x00\x80\b\x03\x00\x00\x00jZ\x96Y\x00\x00\x00\x06PLTE\x00\x00\x00\xFF\xFF\xFF\xA5\xD9\x9F\xDD\x00\x00\x00\x01tRNS\x00@\xE6\xD8f\x00\x00\x07\xB2IDATx\x9C\xEC\x1C\x89v#!\b\xF2\xE6\xFF\x7F\x99MT\xE4\xF4\x984m\x8E\r\xBB\xB5\x13\x83\x1C\xE2\x01\x8C\xF6\x02o\x0E_\x05n\x80\x83\x9AX?j\x1B\xF1w\xDA\xDE\xE0\x02x\x05iu\xFD\x87\xF5\xA1\xD4\xB7\xB2}\x8B\x86<\xB6\xF2\xB9`,\x80t\xFB\xD7>\xD0\x15J)\xDF\x92\xD5\xE0/`\xD0G\xD2\x97\x87\xAE.\xF2\xA3\xB2g\x11\x9E|c\xAA\xA8\xFB\x12D\x1A\xBB\x90\xF0\xBA}\xB8\xFEp\xDDa\xEB\xD9\x06\xA8x2\xEAU5E\xA8Yc\xA9\xC7\xBD\xA2k\xEAYoq\r+\x807\xE4f\x01C\xA2\x97T\xDB\xE0\xED\x7F\xED\x17~\xDA\x91\xC40\xDD\x05\x19\xCEM\xACR\xA2\xEBZ3Yqcp\x8F\xD6\x9CX\xF3\xE3U\b\xD5\x07\x94\xAA\xB6\xEE\x94\xB2Y\x80\xCA\x98Q\x16P\x1Asi\xD8R\xA7O\x9Dy\xAF#%\x11\x05a)\xD3\x00\x9Am\x1B\xF4QK\xC2\xAD\xE3P\xAB&e\x01QR\x9E\x9D\xEA)\xD7\xB8r\x9F]\xCBG\xAD\x10\x94\x00\x00v\xD5V\xE8}\x12\xB7\xE9.\xEBh\xEDJ\xB7\"=\x02N\xCD\x07bTLF\xC0\r\x0E[\xAD\xF7\x81V\xDE*\xC8\xB1\xFF\x912\xFB\x8D\x93\x01\xCC\xCA\xF4\xE5#\xD9\x07\x1C\x03Wa\xEC\xF3\x03\xD8\xB1\x03\xD9\x92T}\xDEpo\x15\x9A\x8B\xF4\xE09\xF0\xF9\xF0u\xA7\x9F\r\x1F\xA6\xC0b\x0E\x87\xCD\xE5\x05\xC0x\xA3\xFD\xB1|\x90\xC2:mg\xDC\xE9\xB2b\x83P\xEB{#U\xA2\xC93\xB2+\x12\x19\xF4=\xB6\xFE\xC6\xB8A\xA1\x0E\xB5\xD8\xBD\x13/%:^+CH\xFB\xC4EAcS\b\x02DbN\xD8\xDBO2\x07\x9AWz\xF5\xED\x8A{\xE7\tu\x1F\x1D\x9C\xDF\x94\xC9O\xFEA>\x1A\x93\xE7h\xAE\xB3\xE4K\xE5\xF3[\x05\xA8nr\xA47\xBD\x12'`\x1A\x9B\x11\xAE\x03\x1AP\xA6N\xE4T\x8EqB\xD3\x18\x84*bA\xA58\xC4P?*\xA2\\\xA0G4\xDE9\x8A\x86\xAF\xC6\xB9\x18t\x18\xBBB\x9DEU\xA5\xCAS]\xF6vQ\\{\x1A\x7F\xB8\"\xAB\xE3Bo\x11R\x06\xD0I\xC9\xA3g6\xC5m\xD6.g\xE2,\xA08\x1A\xFD\x17\x19\x14$L\xC2\xC8z\xEAG\xEA\xB1\x07\xA8\xAB\x90r\x13&A\xA0\xCE$\xDB\x90\xAE\x07\x8F\xA0\x03\xC3QH\xA9\xEA%P\xB4!e\x8FQ;\x02\xDA\xF5\xC2\xCD\xB5\x03\xCC\xB7\f\xA6\xD7\xCD\x1B\x80\xC9\xBB\xB7\xA4y\xAC\xDF\fh\x14i\xC3=0;\xA4:\x9D\xCC;\x06\xDC>\x00(47[l\xA0\r&q\xA6\xF3x\xB9\x9Aj\xD0]\xF4H\xBB\xBFt)\x04\xF4\x04\xA0\xED\x80\xE40\xC2\xA9x@N\x9B\x89qMrCS\xA7\xEC\x8DOkK\xBE-\xD7c\xE5\xE2O\x19\xD6W\xA3\xD4\xE7\xC9\xE3\x96g\x9D\x8D1\x95\xCBV\x9B\xA8c^\x93\x9D\xF8$U\x9AWd\x8D\xCED\xE8\xE7H\x7F\x06|\x807\xFA\xE6\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0U\xE0\xD9\xF0\xBF(\xC0I\xED;\x00Cv\x01\xCD\x99\xCAGq49x\xD4\xB5\xEA\xA7f*\xFB\xDDK9\xB4\xEDr;\xFD~\xA6dA\x01\xD43\xBA6\xE6\xC4\xB5\x88`\x9A\x9B\xD7\x03\xC3\x1E@\xC3'(\x00^\xB1(\v8l\xB4(ir\x07\xD1\xBF\xBF7)`e\x8C\xBC\xC3,%\x937\x06}\x8A\x17#\xA6\x9C\xB2N\xE8\xF0\xB3b\x99\xF3\x8F\n\x18\x9Bk\xEEc2,\x88\x98Y\xCB\x16\xC4L\x944\xC4\xA2\x88\x88\xD1\xC0L\x17\xE3\x9D\r\xDD\xED\xDE\xE0\xFACH\xEE\xF2\xAB\x07hw4P]\xA6\xF4I\\N\xC1\xF6\xDCv\xA9H\xD2\xA4\xFC*\x038\x1F\xEA\xB9\xB2\xDA\xA1Yc\xAB\xEF\xF3\x94\x8B\x94\x18R\xDC\xAE\xBB3\xCB\xC5\x13\xE0\x00\xA6\x1EC\r\xA4\r\xE2\xC1\xB70z]?\xE1\xA7/\xB3\x94\xA2-\x8E\xE0\xD7\x9E\xD8\xC5\x10f\x84\xFD8Z'\x02f\xBE\fxr\xDD\x1C\xD0\x17\x8F\xDA\xCEZ@N|R;\x1B\xA6\xE9P j\xDA\r\xBF\xE5\x8A\xCC\b\xE1\xFD\x80g\x04\xEA\xC4h}\x1F\xC2\xB7^\x16g\x8D\x12\x01~\xE1\xBCLF\xF1\xF1\\~\x11\x12a\xDFJ\xFE\x07\xC0\xFF\xE2\x8D\xBE.|\x82\x02z\x8D\xE7+P\xE8\xF6?\r\x11\xDF\xF8z\xA1\x1E\x00\xFC^;\xE0\xA59\f\xA9a\xB2c\xEB\x82\xCF:\x80\xF2h\x93\xFB_\xDA/C\x98\xD4\xB3\x17\x97\xB7\xC5L\xD5)\x97\xFDM\x12@\xB3\xB9\xA3\xA9\xA6p\x0E}\x85\xEF\xFE8\x8C>'\x1EJ\xE7:\xF6\x9B\x17\xA1\x04\xCC\x0E\xEC\xF4c8\xBC\xC3\xE78\br7\xA48:\xF6\x18\x8E/A=\xAF\x0F<\xE5\x1EVR\xAAc\xF3\xE6\b}\xD7`!\xD6\x96O\x18\xE0\xD2<\xBBEy\xBF\x1B\x11or\x0Ea\xC7\xA75\xD7\xA5o\xF7\xB4\xF7\x8E\x9C\x91u[\xC7Ce\xDCtC\x83}\v \x1F#\xB9\x0E\xA1\x1As\xCDK+\xD1\xA0\\\xC1R\x83vNeE\xC5\xB9\xC9\xC7dVI\xA9\x99\xFC\x1A4\xC9N\xB2\xD8=\xB5X\xFE0\x94\x1C\xDFK\xCB\x16\xF6\xDA\x92#\xEC\"\"\xDA\xF3H\xB6d\x1C\\\xE2t\x99\xCE\x9Eh\xF9\vOw\x9F\xC7yi^\xCCS\x7F1q\xEE\x85O\xF0F\xDF\x1B>A\x81_\x8E\x07\x9As|&\x1E\x98q\xD1\x8E\xB7EjE\x16\x0Fd\xB4w\xE3\x01h\xA9\xDB\xEDx`\xC1\x05!*0\x85\x9F&\x83\xC2\xAB\x8B\x19\xEE\x83\xF1\x1E\x05\xDB\xFCp\xB3\x81\xFE\xFEX;B\xE9\x1F\x8F\xCA\xCA\x9A\xF9\x8B%\x80\xB9Q0\xF6g\xA9I\xE7\xEF\x15\xF8\x12L\x00\xD45\x9A\x95\x12V\x8E\xCAqK\x80\xC9\x8D\x02]r\xCA\x16\x97\x98\xAA<6\xA4W3\x99\xC6\x98s\xD8\xF0\xBA$\xFC<3\xC6\x8F\xD4\x85t\xA5\xF1\xD3\xEF\x8D\x076\xE0\x1Eg\xFD\xE4%\xA0i\x02\xE01\xC0\xA4RK\xFBk\x02<\x94r\xFF\xBE\x97\x9B\x93x\x9DqXLb\x11\x0E\xB0\xFD\x815_\x02\x9C\xBD\xB3n:\xE7dg\xDE\x03s\x1Ez\xD7\xC3%\xF69\xDA\x7F\x03\xA8\xFF\xBC\xDEG\xDCP\xFE\x17\x00\x00\xFF\xFF!o0\xC6\x16:4\xA9\x00\x00\x00\x00IEND\xAEB`\x82"));T=$makeMap($String.keyFor,[{k:"text.png",v:P}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,P,Q,Y,Z,AA,AB,AC,AD,AE,AF,AL,AM,AN,AO,R,U,S,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];P=$pkg.debugPrintImageParts=$newType(8,$kindString,"ebitenutil.debugPrintImageParts","debugPrintImageParts","github.com/hajimehoshi/ebiten/ebitenutil",null);Q=$pkg.debugPrintState=$newType(0,$kindStruct,"ebitenutil.debugPrintState","debugPrintState","github.com/hajimehoshi/ebiten/ebitenutil",function(textImage_,debugPrintRenderTarget_){this.$val=this;if(arguments.length===0){this.textImage=Y.nil;this.debugPrintRenderTarget=Y.nil;return;}this.textImage=textImage_;this.debugPrintRenderTarget=debugPrintRenderTarget_;});Y=$ptrType(A.Image);Z=$arrayType($Float64,3);AA=$arrayType(Z,2);AB=$arrayType($Float64,5);AC=$arrayType(AB,4);AD=$sliceType(A.ImagePart);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);AO=$ptrType(Q);P.prototype.Len=function(){var $ptr,a;a=this.$val;return a.length;};$ptrType(P).prototype.Len=function(){return new P(this.$get()).Len();};P.prototype.Dst=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=0;c=0;d=0;e=0;f=this.$val;g=6;h=16;i=g;j=h;k=(a-E.LastIndex(f.substring(0,a),"\n")>>0)-1>>0;l=E.Count(f.substring(0,a),"\n");k=$imul(k,(i));l=$imul(l,(j));if(k<0){m=0;n=0;o=0;p=0;b=m;c=n;d=o;e=p;return[b,c,d,e];}q=k;r=l;s=k+i>>0;t=l+j>>0;b=q;c=r;d=s;e=t;return[b,c,d,e];};$ptrType(P).prototype.Dst=function(a){return new P(this.$get()).Dst(a);};P.prototype.Src=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;b=0;c=0;d=0;e=0;f=this.$val;g=6;h=16;i=g;j=h;k=(f.charCodeAt(a)>>0);if(k===10){l=0;m=0;n=0;o=0;b=l;c=m;d=n;e=o;return[b,c,d,e];}q=$imul(((p=k%32,p===p?p:$throwRuntimeError("integer divide by zero"))),i);s=$imul(((r=k/32,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))),j);t=q;u=s;v=q+i>>0;w=s+j>>0;b=t;c=u;d=v;e=w;return[b,c,d,e];};$ptrType(P).prototype.Src=function(a){return new P(this.$get()).Src(a);};S=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=R.DebugPrint(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DebugPrint=S;Q.ptr.prototype.drawText=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,$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:f=this;h=e.RGBA();$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];k=g[2];l=g[3];m=i/65535;n=j/65535;o=k/65535;p=l/65535;if(0>0),d);q.ColorM.Scale(m,n,o,p);r=a.DrawImage(f.textImage,q);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.drawText};}$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;};Q.prototype.drawText=function(a,b,c,d,e){return this.$val.drawText(a,b,c,d,e);};Q.ptr.prototype.DebugPrint=function(a,b){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:c=this;if(c.textImage===Y.nil){$s=1;continue;}$s=2;continue;case 1:e=B.TextImage();$s=3;case 3: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))){return g;}i=A.NewImageFromImage(f,0);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.textImage=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return g;}case 2:if(c.debugPrintRenderTarget===Y.nil){$s=5;continue;}$s=6;continue;case 5:j=256;k=256;l=j;m=k;n=$ifaceNil;p=A.NewImage(l,m,0);$s=7;case 7:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;c.debugPrintRenderTarget=o[0];n=o[1];if(!($interfaceIsEqual(n,$ifaceNil))){return n;}case 6:$r=c.drawText(a,b,1,1,(q=new C.NRGBA.ptr(0,0,0,128),new q.constructor.elem(q)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.drawText(a,b,0,0,(r=new C.NRGBA.ptr(255,255,255,255),new r.constructor.elem(r)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.DebugPrint};}$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;};Q.prototype.DebugPrint=function(a,b){return this.$val.DebugPrint(a,b);};V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;P.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];AO.methods=[{prop:"drawText",name:"drawText",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",typ:$funcType([Y,$String,$Int,$Int,C.Color],[],false)},{prop:"DebugPrint",name:"DebugPrint",pkg:"",typ:$funcType([Y,$String],[$error],false)}];Q.init([{prop:"textImage",name:"textImage",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",typ:Y,tag:""},{prop:"debugPrintRenderTarget",name:"debugPrintRenderTarget",pkg:"github.com/hajimehoshi/ebiten/ebitenutil",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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;R=new Q.ptr(Y.nil,Y.nil);V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/common"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,J,K,L,M,N,O,P,Q,R,S,I;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/color"];D=$packages["math"];E=$packages["path/filepath"];F=$packages["runtime"];G=$packages["strings"];H=$pkg.Font=$newType(0,$kindStruct,"common.Font","Font","github.com/hajimehoshi/ebiten/examples/common",function(image_,offset_,charNumPerLine_,charWidth_,charHeight_){this.$val=this;if(arguments.length===0){this.image=R.nil;this.offset=0;this.charNumPerLine=0;this.charWidth=0;this.charHeight=0;return;}this.image=image_;this.offset=offset_;this.charNumPerLine=charNumPerLine_;this.charWidth=charWidth_;this.charHeight=charHeight_;});J=$pkg.fontImageParts=$newType(0,$kindStruct,"common.fontImageParts","fontImageParts","github.com/hajimehoshi/ebiten/examples/common",function(str_,font_){this.$val=this;if(arguments.length===0){this.str="";this.font=K.nil;return;}this.str=str_;this.font=font_;});K=$ptrType(H);L=$sliceType($String);M=$arrayType($Float64,3);N=$arrayType(M,2);O=$arrayType($Float64,5);P=$arrayType(O,4);Q=$sliceType(A.ImagePart);R=$ptrType(A.Image);S=$ptrType(J);H.ptr.prototype.TextWidth=function(a){var $ptr,a,b;b=this;return $imul(b.charWidth,a.length);};H.prototype.TextWidth=function(a){return this.$val.TextWidth(a);};I=function(){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="";b=E.Join(new L([a,"images","arcadefont.png"]));d=B.NewImageFromFile(b,0);$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[2];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$pkg.ArcadeFont=new H.ptr(e,32,16,8,8);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$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;};J.ptr.prototype.Len=function(){var $ptr,a;a=this;return a.str.length;};J.prototype.Len=function(){return this.$val.Len();};J.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=0;c=0;d=0;e=0;f=this;g=(a-G.LastIndex(f.str.substring(0,a),"\n")>>0)-1>>0;h=G.Count(f.str.substring(0,a),"\n");g=$imul(g,(f.font.charWidth));h=$imul(h,(f.font.charHeight));if(g<0){i=0;j=0;k=0;l=0;b=i;c=j;d=k;e=l;return[b,c,d,e];}m=g;n=h;o=g+f.font.charWidth>>0;p=h+f.font.charHeight>>0;b=m;c=n;d=o;e=p;return[b,c,d,e];};J.prototype.Dst=function(a){return this.$val.Dst(a);};J.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=0;c=0;d=0;e=0;f=this;g=(f.str.charCodeAt(a)>>0);if(g===10){h=0;i=0;j=0;k=0;b=h;c=i;d=j;e=k;return[b,c,d,e];}m=$imul(((l=g%f.font.charNumPerLine,l===l?l:$throwRuntimeError("integer divide by zero"))),f.font.charWidth);o=$imul(((n=((g-f.font.offset>>0))/f.font.charNumPerLine,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))),f.font.charHeight);p=m;q=o;r=m+f.font.charWidth>>0;s=o+f.font.charHeight>>0;b=p;c=q;d=r;e=s;return[b,c,d,e];};J.prototype.Src=function(a){return this.$val.Src(a);};H.ptr.prototype.DrawText=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,$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:g=this;h=new A.DrawImageOptions.ptr(new J.ptr(b,g),new A.GeoM.ptr(false,N.zero()),new A.ColorM.ptr(false,P.zero()),Q.nil);h.GeoM.Scale(e,e);h.GeoM.Translate(c,d);j=f.RGBA();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=i[2];n=i[3];o=k/65535;p=l/65535;q=m/65535;r=n/65535;if(0>0,d+1>>0,e,(h=new C.NRGBA.ptr(0,0,0,128),new h.constructor.elem(h)));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return j;case 3:k=g.DrawText(a,b,c,d,e,f);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return l;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.DrawTextWithShadow};}$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;};H.prototype.DrawTextWithShadow=function(a,b,c,d,e,f){return this.$val.DrawTextWithShadow(a,b,c,d,e,f);};K.methods=[{prop:"TextWidth",name:"TextWidth",pkg:"",typ:$funcType([$String],[$Int],false)},{prop:"DrawText",name:"DrawText",pkg:"",typ:$funcType([R,$String,$Int,$Int,$Int,C.Color],[$error],false)},{prop:"DrawTextWithShadow",name:"DrawTextWithShadow",pkg:"",typ:$funcType([R,$String,$Int,$Int,$Int,C.Color],[$error],false)}];S.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dst",name:"Dst",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Src",name:"Src",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}];H.init([{prop:"image",name:"image",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:R,tag:""},{prop:"offset",name:"offset",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charNumPerLine",name:"charNumPerLine",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charWidth",name:"charWidth",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""},{prop:"charHeight",name:"charHeight",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$Int,tag:""}]);J.init([{prop:"str",name:"str",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:$String,tag:""},{prop:"font",name:"font",pkg:"github.com/hajimehoshi/ebiten/examples/common",typ:K,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;}$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;}$pkg.ArcadeFont=K.nil;$r=I();$s=8;case 8: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["github.com/hajimehoshi/ebiten/exp/audio"]=(function(){var $pkg={},$init,B,A,C,D,F,G,E;B=$packages["github.com/hajimehoshi/ebiten/internal/audio"];A=$packages["io"];C=$pkg.ReadSeekCloser=$newType(8,$kindInterface,"audio.ReadSeekCloser","ReadSeekCloser","github.com/hajimehoshi/ebiten/exp/audio",null);D=$pkg.Player=$newType(0,$kindStruct,"audio.Player","Player","github.com/hajimehoshi/ebiten/exp/audio",function(src_,sampleRate_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;this.sampleRate=0;return;}this.src=src_;this.sampleRate=sampleRate_;});F=$sliceType($Uint8);G=$ptrType(D);E=function(a,b){var $ptr,a,b;return new D.ptr(a,b);};$pkg.NewPlayer=E;D.ptr.prototype.Play=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=B.Play(a.src,a.sampleRate);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Play};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Play=function(){return this.$val.Play();};G.methods=[{prop:"Play",name:"Play",pkg:"",typ:$funcType([],[$error],false)}];C.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([F],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}]);D.init([{prop:"src",name:"src",pkg:"github.com/hajimehoshi/ebiten/exp/audio",typ:C,tag:""},{prop:"sampleRate",name:"sampleRate",pkg:"github.com/hajimehoshi/ebiten/exp/audio",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=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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/piano"]=(function(){var $pkg={},$init,A,B,F,G,H,I,C,D,E,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,J,L,P,Q,T,K,M,O,R,S,U,V,W;A=$packages["bytes"];B=$packages["fmt"];F=$packages["github.com/hajimehoshi/ebiten"];G=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];H=$packages["github.com/hajimehoshi/ebiten/examples/common"];I=$packages["github.com/hajimehoshi/ebiten/exp/audio"];C=$packages["image/color"];D=$packages["log"];E=$packages["math"];N=$pkg.stream=$newType(0,$kindStruct,"main.stream","stream","github.com/hajimehoshi/ebiten/examples/piano",function(Reader_){this.$val=this;if(arguments.length===0){this.Reader=AK.nil;return;}this.Reader=Reader_;});X=$ptrType(F.Image);Y=$sliceType($Float64);Z=$sliceType(F.Key);AA=$sliceType($Uint8);AB=$sliceType($Int16);AC=$sliceType($String);AD=$arrayType($Float64,3);AE=$arrayType(AD,2);AF=$arrayType($Float64,5);AG=$arrayType(AF,4);AH=$sliceType(F.ImagePart);AI=$ptrType(F.DrawImageOptions);AJ=$sliceType($emptyInterface);AK=$ptrType(A.Reader);AL=$ptrType(N);K=function(){var $ptr,a,b,c,d,e,f,g,h;a=44100;b=new Y([1,0.8,0.6,0.4,0.2]);c=new Y([4,2,1,0.5,0.25]);d=0;while(true){if(!(d=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+g])*E.Exp(-5*d/(((g<0||g>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+g])*a));e=e+(h*E.Sin(d*f*(g+1>>0)/a));g=g+(1)>>0;}((d<0||d>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+d]=e/5);d=d+(1)>>0;}};M=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;if(!((a.$length===b.$length))){$panic(new $String("len(l) must equal to len(r)"));}c=$makeSlice(AA,($imul(a.$length,4)));d=a;e=0;while(true){if(!(e=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+g]=(((f<0||f>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+f])<<24>>>24)));(h=($imul(4,f))+1>>0,((h<0||h>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]=((((f<0||f>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+f])>>8<<16>>16)<<24>>>24)));(i=($imul(4,f))+2>>0,((i<0||i>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+i]=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])<<24>>>24)));(j=($imul(4,f))+3>>0,((j<0||j>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+j]=((((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>8<<16>>16)<<24>>>24)));e++;}return c;};N.ptr.prototype.Close=function(){var $ptr,a;a=this;return $ifaceNil;};N.prototype.Close=function(){return this.$val.Close();};O=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,$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:c=(a>>0);d=(e=L[$Int.keyFor(c)],e!==undefined?[e.v,true]:[AA.nil,false]);f=d[0];g=d[1];if(g){$s=1;continue;}$s=2;continue;case 1:h=I.NewPlayer(new N.ptr(A.NewReader(f)),44100);i=h.Play();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;return;case 2:k=(j=($imul(J.$length,220))/c,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));l=$makeSlice(AB,k);m=$makeSlice(AB,k);n=0;o=0;p=0;while(true){if(!(p=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+n]);((p<0||p>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+p]=(q*b*32767>>0));((p<0||p>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+p]=((p<0||p>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+p]));o=o+(c)>>0;n=(r=o/220,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));p=p+(1)>>0;}s=M(l,m);t=c;(L||$throwRuntimeError("assignment to entry in nil map"))[$Int.keyFor(t)]={k:t,v:s};u=I.NewPlayer(new N.ptr(A.NewReader(s)),44100);v=u.Play();$s=4;case 4:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};R=function(){var $ptr,a,b,c,d;a=P;b=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b]);d=c;(Q||$throwRuntimeError("assignment to entry in nil map"))[F.Key.keyFor(d)]={k:d,v:0};b++;}};S=function(){var $ptr,a,b,c,d,e,f;a=P;b=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b]);if(!F.IsKeyPressed(c)){d=c;(Q||$throwRuntimeError("assignment to entry in nil map"))[F.Key.keyFor(d)]={k:d,v:0};b++;continue;}e=c;(Q||$throwRuntimeError("assignment to entry in nil map"))[F.Key.keyFor(e)]={k:e,v:(f=Q[F.Key.keyFor(c)],f!==undefined?f.v:0)+(1)>>0};b++;}};U=function(){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:a=$ifaceNil;c=F.NewImage(16,16,0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];a=b[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}f=d.Fill((e=C.White,new e.constructor.elem(e)));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;h=F.NewImage(320,240,0);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;T=g[0];a=g[1];if(!($interfaceIsEqual(a,$ifaceNil))){$panic(a);}i=new AC(["A","S","D","F","G","H","J","K","L"]);j=24;k=48;l=i;m=0;case 4:if(!(m=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);p=($imul(n,j))+36>>0;q=112;r=new F.DrawImageOptions.ptr($ifaceNil,new F.GeoM.ptr(false,AE.zero()),new F.ColorM.ptr(false,AG.zero()),AH.nil);s=d.Size();t=s[0];u=s[1];r.GeoM.Scale((j-1>>0)/t,q/u);r.GeoM.Translate(p,k);r.ColorM.Scale(1,1,1,1);v=T.DrawImage(d,r);$s=6;case 6:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;x=H.ArcadeFont.DrawText(T,o,p+8>>0,(k+q>>0)-16>>0,1,(w=C.Black,new w.constructor.elem(w)));$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;m++;$s=4;continue;case 5:y=new AC(["Q","W","","R","T","","U","I","O"]);z=y;aa=0;case 8:if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===""){$s=10;continue;}$s=11;continue;case 10:aa++;$s=8;continue;case 11:ad=($imul(ab,j))+24>>0;ae=64;af=new F.DrawImageOptions.ptr($ifaceNil,new F.GeoM.ptr(false,AE.zero()),new F.ColorM.ptr(false,AG.zero()),AH.nil);ag=d.Size();ah=ag[0];ai=ag[1];af.GeoM.Scale((j-1>>0)/ah,ae/ai);af.GeoM.Translate(ad,k);af.ColorM.Scale(0,0,0,1);aj=T.DrawImage(d,af);$s=12;case 12:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;al=H.ArcadeFont.DrawText(T,ac,ad+8>>0,(k+ae>>0)-16>>0,1,(ak=C.White,new ak.constructor.elem(ak)));$s=13;case 13:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;aa++;$s=8;continue;case 9:$s=-1;case-1:}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.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;};V=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:S();b=P;c=0;case 1:if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);if(!(((f=Q[F.Key.keyFor(e)],f!==undefined?f.v:0)===1))){$s=3;continue;}$s=4;continue;case 3:c++;$s=1;continue;case 4:$r=O(220*E.Exp2((d-1>>0)/12),1);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c++;$s=1;continue;case 2:h=a.Fill((g=new C.RGBA.ptr(128,128,192,255),new g.constructor.elem(g)));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=a.DrawImage(T,AI.nil);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;j=a;k=B.Sprintf("FPS: %0.2f",new AJ([new $Float64(F.CurrentFPS())]));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=G.DebugPrint(j,l);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;return $ifaceNil;}return;}if($f===undefined){$f={$blk:V};}$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;};W=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=F.Run(V,320,240,2,"Piano (Ebiten Demo)");$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}b=a;if(!($interfaceIsEqual(b,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new AJ([b]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AL.methods=[{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];N.init([{prop:"Reader",name:"",pkg:"",typ:AK,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=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}T=X.nil;J=$makeSlice(Y,176400);L=$makeMap($Int.keyFor,[]);P=new Z([26,10,32,28,13,27,15,29,16,17,30,19,18,20,24,21]);Q=$makeMap(F.Key.keyFor,[]);K();R();$r=U();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($pkg===$mainPkg){$s=11;continue;}$s=12;continue;case 11:$r=W();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 12:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/piano"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=piano.js.map diff --git a/_docs/public/examples/piano.js.map b/_docs/public/examples/piano.js.map deleted file mode 100644 index 815b2a504..000000000 --- a/_docs/public/examples/piano.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"piano.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/bytes/reader.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/path_unix.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/path/filepath/path.go","/path/filepath/path_unix.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/input.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/internal/assets/assets.go","/github.com/hajimehoshi/ebiten/ebitenutil/internal/assets/bindata.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/debugprint.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/github.com/hajimehoshi/ebiten/examples/common/font.go","/github.com/hajimehoshi/ebiten/exp/audio/audio.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/piano/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;;+QCpQA,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;2+BCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,wEC7X/B,O,+FAEJ,S,CAED,+H,mGAOK,OAA0B,iC,4IAE1B,O,kB,oC,C,+F,gC,CAOL,cACA,+CACA,wEACA,Y,8IAGK,O,yC,wE,C,yF,gC,CAQL,6C,gBAEC,Q,CAED,Y,uJAGK,OACL,c,+F,gC,CAIA,yIACA,wEACA,Y,yHAGK,OACL,c,kDAEC,+D,CAED,wEACA,iB,iLAGK,O,+FAEJ,c,0C,CAGD,0DACG,yI,UACF,wE,mD,CAGD,6DACA,wEACA,c,mHAGK,O,iBAEJ,6E,CAED,6BACA,cACA,iB,gIAIK,OACL,cACI,kBACJ,IACA,UACC,IACD,gBACC,oDACD,gBACC,0E,MAEA,mE,C,yCAGA,sE,CAED,MACA,oB,gaAIK,OACL,c,+F,kD,CAIA,iCACA,0G,gBAEC,iE,CAED,wEACA,kB,uDAEC,kB,CAED,Y,sSAIkC,wC,oqG,4F,4F,4F,4F;ufCvGlC,8B,wCAQA,8B,wCAIA,gC,+C,WA8BC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;i1GCpB/B,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;2QC1BA,+D,gDAIA,kC,4CAIA,sC,oDAIA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,2D,kBCwVC,S,C,kBAGA,oF,CAED,qCACI,0CACH,qGADuB,W,CAIxB,mBACA,+FACA,kJACC,uCACA,uC,KAED,yB,qE,mBAqRC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;ymFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,4BCEA,c,iDCMA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;6pBCxWrB,O,sBAEJ,qG,CAED,4B,gHAGK,O,mB,oDAGH,eACA,O,CAED,mCACA,2C,CAED,uGACA,e,2GAGK,O,mBAEJ,mD,CAED,iF,2GA8BA,IACA,QACA,iB,W,mCAIE,Y,CAED,a,CAED,qCAOA,WACA,4BACA,gB,MAEC,aACA,gB,CAGD,8BAEC,uCAEC,WACD,8FAEC,WACD,6HAEC,WAEA,UAEC,eACA,kEACC,e,CAEF,a,UAGE,a,CAED,aACA,aACA,M,C,M,sCAMA,a,CAGD,mEACC,0BAD4C,W,C,C,C,YAQ9C,a,CAGD,qB,wCAkBC,SAED,+B,4CA+BA,a,wCC3LA,S,oCAqBA,yI,cAEE,qC,C,KAGF,S,uwB,4F,4F,4F,4F,4F,4F,4F,oD;ovBC1BA,6CAGA,gEACC,a,mCAEC,O,CAEE,2C,0CACF,O,MAEA,U,C,aAGF,yG,6C,ifASA,yH,iS,4F,4F,4F,4F,4F,4F,4F,4F,oDAoGC,qBACA,2H;8vBClHD,I,yNAIA,yG,kKCCA,6GACA,6GACI,6HACH,uUACA,8UAF4B,W,CAI7B,Y,gUAGK,OAEL,gH,sCAEC,S,C,kBAGA,iB,CAID,8HACA,sBACA,sBACA,qBAEI,0CACH,gGACA,gGAFwB,W,CAIzB,yBACA,WACA,yBACA,oBACA,gDACA,iB,mdAIA,4CAKA,2G,wI,mCAMC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,00B,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;y0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,+GAuBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,6uZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eC1HoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;+/CC9EA,0F,iFCSK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;mlJCpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,2gBAoBI,YACA,eACJ,uQACK,SACA,SACJ,wD,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,0O,yCAGA,oB,CAEE,iK,OACF,iB,OAED,uDACA,uB,oYAUI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,4HCPA,8B,8CCUA,c,mwBAaA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;k2CCzyBA,6G,sCAEC,oB,CAED,wH,sCAEC,oB,CAED,oB,iMCnBK,iBACL,c,mGAEK,iBACL,c,mGAEK,iBACL,c,sGAEK,iBACL,iB,0GAEK,iBACL,a,oGAEK,iBACL,iB,4EAMA,oB,kCAIA,oB,sCAEC,iB,CAGD,+GACA,yCACA,oB,4RAOA,2BACG,mI,OACF,mGACA,mE,OACC,kL,OAED,0B,OAED,kK,m7C,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,qyL;4Q;+5CCYK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;45CCldK,YACL,gB,sKAGK,YACL,iBACA,iDACA,iCACA,eACA,e,Q,gD,C,0D,8KAOK,YACL,iBAEA,uB,W,gD,CAIA,2EACA,mG,0D,sRAYA,oH,0eAGK,OACL,sHAEA,UACA,UACA,UACA,U,QAEC,QACA,QACA,Q,CAED,gHAGA,6BACA,wBACA,0G,irBAIK,OACL,qD,OACC,6G,sCAEC,S,CAED,kI,sCAEC,S,C,OAGF,kE,OACC,oBACI,YACJ,wI,sCAEC,S,C,OAGF,+JACA,qKACA,iB,+VCnEA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,gkC,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G,yB;kwCCzBK,OAEL,mC,uSAIA,KAOA,+CAEA,uH,sCAEC,U,CAED,uC,qLAQK,OACL,oB,+IAGK,OACL,qDACA,qCACA,8BACA,+B,Q,gD,C,yF,uJAOK,OACL,2B,W,gD,CAIA,6GACA,2J,yF,kbAIK,OACL,mHAGA,kBACA,sBAEA,sHAEA,UACA,UACA,UACA,U,QAEC,QACA,QACA,Q,CAED,wBAEA,yH,yoBAGK,OACF,6O,OACF,S,OAEE,4K,OACF,S,OAED,iB,muD,4F,4F,4F,4F,4F,4F,kH;2nBC/EA,sB,qOAMK,OACL,6H,o1B,4F;srBCYA,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;6kCCpQA,QACA,6BACA,0BACI,0CACH,IACA,oBACI,0CACH,4LACA,8BAFyB,W,CAI1B,yFAPyB,W,C,+C,+BAiBzB,mD,CAED,sCACA,kDACC,oMACA,wNACA,2MACA,wN,KAED,S,8CAOK,OACL,iB,gbAIA,SACG,iH,OACF,+CACA,wFACA,O,OAED,4GACA,mBACA,mBACA,IACA,IACI,0CACH,uFACA,oGACA,0KACA,WACA,yFALuB,W,CAOxB,SACA,wFACA,+CACA,wF,yRAyBA,qIACC,yF,K,oCAKD,qI,uBAEE,yFACA,a,CAED,yI,K,yiBASG,YACJ,mH,sCAEC,U,CAED,6HACA,qH,sCAEC,U,CAED,gDACA,KACA,KACA,4IACC,qBACA,MACA,iHACA,yBACA,6BACA,sBACA,wBACA,gGACA,wK,yBAGD,8CACA,oJACC,2C,QACC,mB,QAED,uBACA,MACA,kHACA,8BACA,iCACA,wBACA,yBACA,yGACA,sL,0B,sqBAKD,IACA,4IACC,qF,OACC,kB,OAED,+G,yBAGD,qJACA,qGAEA,qPACA,iB,8WAIG,6L,OACF,uG,O,ua,4F,4F,4F,4F,4F,4F,4F,4F,oG,uB,2B,2D,4B,I,I,wF,mD,Q,wF,mB"} diff --git a/_docs/public/examples/rotate.js b/_docs/public/examples/rotate.js deleted file mode 100644 index e6af62b80..000000000 --- a/_docs/public/examples/rotate.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -(function() { - -Error.stackTraceLimit=Infinity;var $global,$module;if(typeof window!=="undefined"){$global=window;}else if(typeof self!=="undefined"){$global=self;}else if(typeof global!=="undefined"){$global=global;$global.require=require;}else{$global=this;}if($global===undefined||$global.Array===undefined){throw new Error("no global object found");}if(typeof module!=="undefined"){$module=module;}var $packages={},$idCounter=0;var $keys=function(m){return m?Object.keys(m):[];};var $flushConsole=function(){};var $throwRuntimeError;var $throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference");};var $call=function(fn,rcvr,args){return fn.apply(rcvr,args);};var $makeFunc=function(fn){return function(){return fn(new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[])));}};var $mapArray=function(array,f){var newArray=new array.constructor(array.length);for(var i=0;islice.$capacity||max>slice.$capacity){$throwRuntimeError("slice bounds out of range");}var s=new slice.constructor(slice.$array);s.$offset=slice.$offset+low;s.$length=slice.$length-low;s.$capacity=slice.$capacity-low;if(high!==undefined){s.$length=high-low;}if(max!==undefined){s.$capacity=max-low;}return s;};var $sliceToArray=function(slice){if(slice.$length===0){return[];}if(slice.$array.constructor!==Array){return slice.$array.subarray(slice.$offset,slice.$offset+slice.$length);}return slice.$array.slice(slice.$offset,slice.$offset+slice.$length);};var $decodeRune=function(str,pos){var c0=str.charCodeAt(pos);if(c0<0x80){return[c0,1];}if(c0!==c0||c0<0xC0){return[0xFFFD,1];}var c1=str.charCodeAt(pos+1);if(c1!==c1||c1<0x80||0xC0<=c1){return[0xFFFD,1];}if(c0<0xE0){var r=(c0&0x1F)<<6|(c1&0x3F);if(r<=0x7F){return[0xFFFD,1];}return[r,2];}var c2=str.charCodeAt(pos+2);if(c2!==c2||c2<0x80||0xC0<=c2){return[0xFFFD,1];}if(c0<0xF0){var r=(c0&0x0F)<<12|(c1&0x3F)<<6|(c2&0x3F);if(r<=0x7FF){return[0xFFFD,1];}if(0xD800<=r&&r<=0xDFFF){return[0xFFFD,1];}return[r,3];}var c3=str.charCodeAt(pos+3);if(c3!==c3||c3<0x80||0xC0<=c3){return[0xFFFD,1];}if(c0<0xF8){var r=(c0&0x07)<<18|(c1&0x3F)<<12|(c2&0x3F)<<6|(c3&0x3F);if(r<=0xFFFF||0x10FFFF0x10FFFF||(0xD800<=r&&r<=0xDFFF)){r=0xFFFD;}if(r<=0x7F){return String.fromCharCode(r);}if(r<=0x7FF){return String.fromCharCode(0xC0|r>>6,0x80|(r&0x3F));}if(r<=0xFFFF){return String.fromCharCode(0xE0|r>>12,0x80|(r>>6&0x3F),0x80|(r&0x3F));}return String.fromCharCode(0xF0|r>>18,0x80|(r>>12&0x3F),0x80|(r>>6&0x3F),0x80|(r&0x3F));};var $stringToBytes=function(str){var array=new Uint8Array(str.length);for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){elem.copy(dst[dstOffset+i],src[srcOffset+i]);}return;}for(var i=0;isrcOffset){for(var i=n-1;i>=0;i--){dst[dstOffset+i]=src[srcOffset+i];}return;}for(var i=0;inewCapacity){newOffset=0;newCapacity=Math.max(newLength,slice.$capacity<1024?slice.$capacity*2:Math.floor(slice.$capacity*5/4));if(slice.$array.constructor===Array){newArray=slice.$array.slice(slice.$offset,slice.$offset+slice.$length);newArray.length=newCapacity;var zero=slice.constructor.elem.zero;for(var i=slice.$length;i>>16)&0xffff;var al=a&0xffff;var bh=(b>>>16)&0xffff;var bl=b&0xffff;return((al*bl)+(((ah*bl+al*bh)<<16)>>>0)>>0);};var $floatKey=function(f){if(f!==f){$idCounter++;return"NaN$"+$idCounter;}return String(f);};var $flatten64=function(x){return x.$high*4294967296+x.$low;};var $shiftLeft64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high<>>(32-y),(x.$low<>>0);}if(y<64){return new x.constructor(x.$low<<(y-32),0);}return new x.constructor(0,0);};var $shiftRightInt64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(x.$high>>31,(x.$high>>(y-32))>>>0);}if(x.$high<0){return new x.constructor(-1,4294967295);}return new x.constructor(0,0);};var $shiftRightUint64=function(x,y){if(y===0){return x;}if(y<32){return new x.constructor(x.$high>>>y,(x.$low>>>y|x.$high<<(32-y))>>>0);}if(y<64){return new x.constructor(0,x.$high>>>(y-32));}return new x.constructor(0,0);};var $mul64=function(x,y){var high=0,low=0;if((y.$low&1)!==0){high=x.$high;low=x.$low;}for(var i=1;i<32;i++){if((y.$low&1<>>(32-i);low+=(x.$low<>>0;}}for(var i=0;i<32;i++){if((y.$high&1<yHigh)||(xHigh===yHigh&&xLow>yLow))){yHigh=(yHigh<<1|yLow>>>31)>>>0;yLow=(yLow<<1)>>>0;n++;}for(var i=0;i<=n;i++){high=high<<1|low>>>31;low=(low<<1)>>>0;if((xHigh>yHigh)||(xHigh===yHigh&&xLow>=yLow)){xHigh=xHigh-yHigh;xLow=xLow-yLow;if(xLow<0){xHigh--;xLow+=4294967296;}low++;if(low===4294967296){high++;low=0;}}yLow=(yLow>>>1|yHigh<<(32-1))>>>0;yHigh=yHigh>>>1;}if(returnRemainder){return new x.constructor(xHigh*rs,xLow*rs);}return new x.constructor(high*s,low*s);};var $divComplex=function(n,d){var ninf=n.$real===Infinity||n.$real===-Infinity||n.$imag===Infinity||n.$imag===-Infinity;var dinf=d.$real===Infinity||d.$real===-Infinity||d.$imag===Infinity||d.$imag===-Infinity;var nnan=!ninf&&(n.$real!==n.$real||n.$imag!==n.$imag);var dnan=!dinf&&(d.$real!==d.$real||d.$imag!==d.$imag);if(nnan||dnan){return new n.constructor(NaN,NaN);}if(ninf&&!dinf){return new n.constructor(Infinity,Infinity);}if(!ninf&&dinf){return new n.constructor(0,0);}if(d.$real===0&&d.$imag===0){if(n.$real===0&&n.$imag===0){return new n.constructor(NaN,NaN);}return new n.constructor(Infinity,Infinity);}var a=Math.abs(d.$real);var b=Math.abs(d.$imag);if(a<=b){var ratio=d.$real/d.$imag;var denom=d.$real*ratio+d.$imag;return new n.constructor((n.$real*ratio+n.$imag)/denom,(n.$imag*ratio-n.$real)/denom);}var ratio=d.$imag/d.$real;var denom=d.$imag*ratio+d.$real;return new n.constructor((n.$imag*ratio+n.$real)/denom,(n.$imag-n.$real*ratio)/denom);};var $kindBool=1;var $kindInt=2;var $kindInt8=3;var $kindInt16=4;var $kindInt32=5;var $kindInt64=6;var $kindUint=7;var $kindUint8=8;var $kindUint16=9;var $kindUint32=10;var $kindUint64=11;var $kindUintptr=12;var $kindFloat32=13;var $kindFloat64=14;var $kindComplex64=15;var $kindComplex128=16;var $kindArray=17;var $kindChan=18;var $kindFunc=19;var $kindInterface=20;var $kindMap=21;var $kindPtr=22;var $kindSlice=23;var $kindString=24;var $kindStruct=25;var $kindUnsafePointer=26;var $methodSynthesizers=[];var $addMethodSynthesizer=function(f){if($methodSynthesizers===null){f();return;}$methodSynthesizers.push(f);};var $synthesizeMethods=function(){$methodSynthesizers.forEach(function(f){f();});$methodSynthesizers=null;};var $ifaceKeyFor=function(x){if(x===$ifaceNil){return'nil';}var c=x.constructor;return c.string+'$'+c.keyFor(x.$val);};var $identity=function(x){return x;};var $typeIDCounter=0;var $idKey=function(x){if(x.$id===undefined){$idCounter++;x.$id=$idCounter;}return String(x.$id);};var $newType=function(size,kind,string,name,pkg,constructor){var typ;switch(kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$identity;break;case $kindString:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return"$"+x;};break;case $kindFloat32:case $kindFloat64:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=function(x){return $floatKey(x);};break;case $kindInt64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindUint64:typ=function(high,low){this.$high=(high+Math.floor(Math.ceil(low)/4294967296))>>>0;this.$low=low>>>0;this.$val=this;};typ.keyFor=function(x){return x.$high+"$"+x.$low;};break;case $kindComplex64:typ=function(real,imag){this.$real=$fround(real);this.$imag=$fround(imag);this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindComplex128:typ=function(real,imag){this.$real=real;this.$imag=imag;this.$val=this;};typ.keyFor=function(x){return x.$real+"$"+x.$imag;};break;case $kindArray:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",function(array){this.$get=function(){return array;};this.$set=function(v){typ.copy(this,v);};this.$val=array;});typ.init=function(elem,len){typ.elem=elem;typ.len=len;typ.comparable=elem.comparable;typ.keyFor=function(x){return Array.prototype.join.call($mapArray(x,function(e){return String(elem.keyFor(e)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}),"$");};typ.copy=function(dst,src){$copyArray(dst,src,0,0,src.length,elem);};typ.ptr.init(typ);Object.defineProperty(typ.ptr.nil,"nilCheck",{get:$throwNilPointerError});};break;case $kindChan:typ=function(v){this.$val=v;};typ.wrapped=true;typ.keyFor=$idKey;typ.init=function(elem,sendOnly,recvOnly){typ.elem=elem;typ.sendOnly=sendOnly;typ.recvOnly=recvOnly;};break;case $kindFunc:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(params,results,variadic){typ.params=params;typ.results=results;typ.variadic=variadic;typ.comparable=false;};break;case $kindInterface:typ={implementedBy:{},missingMethodFor:{}};typ.keyFor=$ifaceKeyFor;typ.init=function(methods){typ.methods=methods;methods.forEach(function(m){$ifaceNil[m.prop]=$throwNilPointerError;});};break;case $kindMap:typ=function(v){this.$val=v;};typ.wrapped=true;typ.init=function(key,elem){typ.key=key;typ.elem=elem;typ.comparable=false;};break;case $kindPtr:typ=constructor||function(getter,setter,target){this.$get=getter;this.$set=setter;this.$target=target;this.$val=this;};typ.keyFor=$idKey;typ.init=function(elem){typ.elem=elem;typ.wrapped=(elem.kind===$kindArray);typ.nil=new typ($throwNilPointerError,$throwNilPointerError);};break;case $kindSlice:typ=function(array){if(array.constructor!==typ.nativeArray){array=new typ.nativeArray(array);}this.$array=array;this.$offset=0;this.$length=array.length;this.$capacity=array.length;this.$val=this;};typ.init=function(elem){typ.elem=elem;typ.comparable=false;typ.nativeArray=$nativeArray(elem.kind);typ.nil=new typ([]);};break;case $kindStruct:typ=function(v){this.$val=v;};typ.wrapped=true;typ.ptr=$newType(4,$kindPtr,"*"+string,"","",constructor);typ.ptr.elem=typ;typ.ptr.prototype.$get=function(){return this;};typ.ptr.prototype.$set=function(v){typ.copy(this,v);};typ.init=function(fields){typ.fields=fields;fields.forEach(function(f){if(!f.typ.comparable){typ.comparable=false;}});typ.keyFor=function(x){var val=x.$val;return $mapArray(fields,function(f){return String(f.typ.keyFor(val[f.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$");}).join("$");};typ.copy=function(dst,src){for(var i=0;i0){var next=[];var mset=[];current.forEach(function(e){if(seen[e.typ.string]){return;}seen[e.typ.string]=true;if(e.typ.typeName!==""){mset=mset.concat(e.typ.methods);if(e.indirect){mset=mset.concat($ptrType(e.typ).methods);}}switch(e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(f){if(f.name===""){var fTyp=f.typ;var fIsPtr=(fTyp.kind===$kindPtr);next.push({typ:fIsPtr?fTyp.elem:fTyp,indirect:e.indirect||fIsPtr});}});break;case $kindInterface:mset=mset.concat(e.typ.methods);break;}});mset.forEach(function(m){if(base[m.name]===undefined){base[m.name]=m;}});current=next;}typ.methodSetCache=[];Object.keys(base).sort().forEach(function(name){typ.methodSetCache.push(base[name]);});return typ.methodSetCache;};var $Bool=$newType(1,$kindBool,"bool","bool","",null);var $Int=$newType(4,$kindInt,"int","int","",null);var $Int8=$newType(1,$kindInt8,"int8","int8","",null);var $Int16=$newType(2,$kindInt16,"int16","int16","",null);var $Int32=$newType(4,$kindInt32,"int32","int32","",null);var $Int64=$newType(8,$kindInt64,"int64","int64","",null);var $Uint=$newType(4,$kindUint,"uint","uint","",null);var $Uint8=$newType(1,$kindUint8,"uint8","uint8","",null);var $Uint16=$newType(2,$kindUint16,"uint16","uint16","",null);var $Uint32=$newType(4,$kindUint32,"uint32","uint32","",null);var $Uint64=$newType(8,$kindUint64,"uint64","uint64","",null);var $Uintptr=$newType(4,$kindUintptr,"uintptr","uintptr","",null);var $Float32=$newType(4,$kindFloat32,"float32","float32","",null);var $Float64=$newType(8,$kindFloat64,"float64","float64","",null);var $Complex64=$newType(8,$kindComplex64,"complex64","complex64","",null);var $Complex128=$newType(16,$kindComplex128,"complex128","complex128","",null);var $String=$newType(8,$kindString,"string","string","",null);var $UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer","Pointer","",null);var $nativeArray=function(elemKind){switch(elemKind){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:return Uint32Array;case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array;}};var $toNativeArray=function(elemKind,array){var nativeArray=$nativeArray(elemKind);if(nativeArray===Array){return array;}return new nativeArray(array);};var $arrayTypes={};var $arrayType=function(elem,len){var typeKey=elem.id+"$"+len;var typ=$arrayTypes[typeKey];if(typ===undefined){typ=$newType(12,$kindArray,"["+len+"]"+elem.string,"","",null);$arrayTypes[typeKey]=typ;typ.init(elem,len);}return typ;};var $chanType=function(elem,sendOnly,recvOnly){var string=(recvOnly?"<-":"")+"chan"+(sendOnly?"<- ":" ")+elem.string;var field=sendOnly?"SendChan":(recvOnly?"RecvChan":"Chan");var typ=elem[field];if(typ===undefined){typ=$newType(4,$kindChan,string,"","",null);elem[field]=typ;typ.init(elem,sendOnly,recvOnly);}return typ;};var $Chan=function(elem,capacity){if(capacity<0||capacity>2147483647){$throwRuntimeError("makechan: size out of range");}this.$elem=elem;this.$capacity=capacity;this.$buffer=[];this.$sendQueue=[];this.$recvQueue=[];this.$closed=false;};var $chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){return undefined;},indexOf:function(){return-1;}};var $funcTypes={};var $funcType=function(params,results,variadic){var typeKey=$mapArray(params,function(p){return p.id;}).join(",")+"$"+$mapArray(results,function(r){return r.id;}).join(",")+"$"+variadic;var typ=$funcTypes[typeKey];if(typ===undefined){var paramTypes=$mapArray(params,function(p){return p.string;});if(variadic){paramTypes[paramTypes.length-1]="..."+paramTypes[paramTypes.length-1].substr(2);}var string="func("+paramTypes.join(", ")+")";if(results.length===1){string+=" "+results[0].string;}else if(results.length>1){string+=" ("+$mapArray(results,function(r){return r.string;}).join(", ")+")";}typ=$newType(4,$kindFunc,string,"","",null);$funcTypes[typeKey]=typ;typ.init(params,results,variadic);}return typ;};var $interfaceTypes={};var $interfaceType=function(methods){var typeKey=$mapArray(methods,function(m){return m.pkg+","+m.name+","+m.typ.id;}).join("$");var typ=$interfaceTypes[typeKey];if(typ===undefined){var string="interface {}";if(methods.length!==0){string="interface { "+$mapArray(methods,function(m){return(m.pkg!==""?m.pkg+".":"")+m.name+m.typ.string.substr(4);}).join("; ")+" }";}typ=$newType(8,$kindInterface,string,"","",null);$interfaceTypes[typeKey]=typ;typ.init(methods);}return typ;};var $emptyInterface=$interfaceType([]);var $ifaceNil={};var $error=$newType(8,$kindInterface,"error","error","",null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}]);var $mapTypes={};var $mapType=function(key,elem){var typeKey=key.id+"$"+elem.id;var typ=$mapTypes[typeKey];if(typ===undefined){typ=$newType(4,$kindMap,"map["+key.string+"]"+elem.string,"","",null);$mapTypes[typeKey]=typ;typ.init(key,elem);}return typ;};var $makeMap=function(keyForFunc,entries){var m={};for(var i=0;i2147483647){$throwRuntimeError("makeslice: len out of range");}if(capacity<0||capacity2147483647){$throwRuntimeError("makeslice: cap out of range");}var array=new typ.nativeArray(capacity);if(typ.nativeArray===Array){for(var i=0;i=$curGoroutine.deferStack.length){throw jsErr;}if(jsErr!==null){var newErr=null;try{$curGoroutine.deferStack.push(deferred);$panic(new $jsErrorPtr(jsErr));}catch(err){newErr=err;}$curGoroutine.deferStack.pop();$callDeferred(deferred,newErr);return;}if($curGoroutine.asleep){return;}$stackDepthOffset--;var outerPanicStackDepth=$panicStackDepth;var outerPanicValue=$panicValue;var localPanicValue=$curGoroutine.panicStack.pop();if(localPanicValue!==undefined){$panicStackDepth=$getStackDepth();$panicValue=localPanicValue;}try{while(true){if(deferred===null){deferred=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1];if(deferred===undefined){$panicStackDepth=null;if(localPanicValue.Object instanceof Error){throw localPanicValue.Object;}var msg;if(localPanicValue.constructor===$String){msg=localPanicValue.$val;}else if(localPanicValue.Error!==undefined){msg=localPanicValue.Error();}else if(localPanicValue.String!==undefined){msg=localPanicValue.String();}else{msg=localPanicValue;}throw new Error(msg);}}var call=deferred.pop();if(call===undefined){$curGoroutine.deferStack.pop();if(localPanicValue!==undefined){deferred=null;continue;}return;}var r=call[0].apply(call[2],call[1]);if(r&&r.$blk!==undefined){deferred.push([r.$blk,[],r]);if(fromPanic){throw null;}return;}if(localPanicValue!==undefined&&$panicStackDepth===null){throw null;}}}finally{if(localPanicValue!==undefined){if($panicStackDepth!==null){$curGoroutine.panicStack.push(localPanicValue);}$panicStackDepth=outerPanicStackDepth;$panicValue=outerPanicValue;}$stackDepthOffset++;}};var $panic=function(value){$curGoroutine.panicStack.push(value);$callDeferred(null,null,true);};var $recover=function(){if($panicStackDepth===null||($panicStackDepth!==undefined&&$panicStackDepth!==$getStackDepth()-2)){return $ifaceNil;}$panicStackDepth=null;return $panicValue;};var $throw=function(err){throw err;};var $dummyGoroutine={asleep:false,exit:false,deferStack:[],panicStack:[],canBlock:false};var $curGoroutine=$dummyGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=true;var $mainFinished=false;var $go=function(fun,args,direct){$totalGoroutines++;$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=fun.apply(undefined,args);if(r&&r.$blk!==undefined){fun=function(){return r.$blk();};args=[];return;}$goroutine.exit=true;}catch(err){if(!$goroutine.exit){throw err;}}finally{$curGoroutine=$dummyGoroutine;if($goroutine.exit){$totalGoroutines--;$goroutine.asleep=true;}if($goroutine.asleep){$awakeGoroutines--;if(!$mainFinished&&$awakeGoroutines===0&&$checkForDeadlock){console.error("fatal error: all goroutines are asleep - deadlock!");if($global.process!==undefined){$global.process.exit(2);}}}}};$goroutine.asleep=false;$goroutine.exit=false;$goroutine.deferStack=[];$goroutine.panicStack=[];$goroutine.canBlock=true;$schedule($goroutine,direct);};var $scheduled=[],$schedulerActive=false;var $runScheduled=function(){try{var r;while((r=$scheduled.shift())!==undefined){r();}$schedulerActive=false;}finally{if($schedulerActive){setTimeout($runScheduled,0);}}};var $schedule=function(goroutine,direct){if(goroutine.asleep){goroutine.asleep=false;$awakeGoroutines++;}if(direct){goroutine();return;}$scheduled.push(goroutine);if(!$schedulerActive){$schedulerActive=true;setTimeout($runScheduled,0);}};var $setTimeout=function(f,t){$awakeGoroutines++;return setTimeout(function(){$awakeGoroutines--;f();},t);};var $block=function(){if(!$curGoroutine.canBlock){$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");}$curGoroutine.asleep=true;};var $send=function(chan,value){if(chan.$closed){$throwRuntimeError("send on closed channel");}var queuedRecv=chan.$recvQueue.shift();if(queuedRecv!==undefined){queuedRecv([value,true]);return;}if(chan.$buffer.length0xFFFF){var h=Math.floor((c-0x10000)/0x400)+0xD800;var l=(c-0x10000)%0x400+0xDC00;s+=String.fromCharCode(h,l);continue;}s+=String.fromCharCode(c);}return s;case $kindStruct:var timePkg=$packages["time"];if(timePkg!==undefined&&v.constructor===timePkg.Time.ptr){var milli=$div64(v.UnixNano(),new $Int64(0,1000000));return new Date($flatten64(milli));}var noJsObject={};var searchJsObject=function(v,t){if(t===$jsObjectPtr){return v;}switch(t.kind){case $kindPtr:if(v===t.nil){return noJsObject;}return searchJsObject(v.$get(),t.elem);case $kindStruct:var f=t.fields[0];return searchJsObject(v[f.prop],f.typ);case $kindInterface:return searchJsObject(v.$val,v.constructor);default:return noJsObject;}};var o=searchJsObject(v,t);if(o!==noJsObject){return o;}o={};for(var i=0;i>24;case $kindInt16:return parseInt(v)<<16>>16;case $kindInt32:return parseInt(v)>>0;case $kindUint:return parseInt(v);case $kindUint8:return parseInt(v)<<24>>>24;case $kindUint16:return parseInt(v)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(v)>>>0;case $kindInt64:case $kindUint64:return new t(0,v);case $kindFloat32:case $kindFloat64:return parseFloat(v);case $kindArray:if(v.length!==t.len){$throwRuntimeError("got array with wrong size from JavaScript native");}return $mapArray(v,function(e){return $internalize(e,t.elem);});case $kindFunc:return function(){var args=[];for(var i=0;i>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var $ptr,a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var $ptr,a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var $ptr,a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var $ptr,a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var $ptr,a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var $ptr,a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var $ptr,a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};K=function(){var $ptr,a;a=new B.ptr(null);};N.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[N],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[N],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,L],[N],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([L],[N],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([L],[N],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];Q.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init([{prop:"object",name:"object",pkg:"github.com/gopherjs/gopherjs/js",typ:N,tag:""}]);B.init([{prop:"Object",name:"",pkg:"",typ:N,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:K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["runtime"]=(function(){var $pkg={},$init,A,AB,AC,AT,C,F,I,P;A=$packages["github.com/gopherjs/gopherjs/js"];AB=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError","TypeAssertionError","runtime",function(interfaceString_,concreteString_,assertedString_,missingMethod_){this.$val=this;if(arguments.length===0){this.interfaceString="";this.concreteString="";this.assertedString="";this.missingMethod="";return;}this.interfaceString=interfaceString_;this.concreteString=concreteString_;this.assertedString=assertedString_;this.missingMethod=missingMethod_;});AC=$pkg.errorString=$newType(8,$kindString,"runtime.errorString","errorString","runtime",null);AT=$ptrType(AB);C=function(){var $ptr,a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=(function(b){var $ptr,b;$panic(new AC(b));});b=$ifaceNil;b=new AB.ptr("","","","");};F=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c="";d=0;e=false;f=new($global.Error)().stack.split($externalize("\n",$String))[(a+2>>0)];if(f===undefined){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}k=f.substring(($parseInt(f.indexOf($externalize("(",$String)))>>0)+1>>0,$parseInt(f.indexOf($externalize(")",$String)))>>0).split($externalize(":",$String));l=0;m=$internalize(k[0],$String);n=$parseInt(k[1])>>0;o=true;b=l;c=m;d=n;e=o;return[b,c,d,e];};$pkg.Caller=F;I=function(){var $ptr;$curGoroutine.exit=$externalize(true,$Bool);$throw(null);};$pkg.Goexit=I;P=function(a,b){var $ptr,a,b;};$pkg.SetFinalizer=P;AB.ptr.prototype.RuntimeError=function(){var $ptr;};AB.prototype.RuntimeError=function(){return this.$val.RuntimeError();};AB.ptr.prototype.Error=function(){var $ptr,a,b;a=this;b=a.interfaceString;if(b===""){b="interface";}if(a.concreteString===""){return"interface conversion: "+b+" is nil, not "+a.assertedString;}if(a.missingMethod===""){return"interface conversion: "+b+" is "+a.concreteString+", not "+a.assertedString;}return"interface conversion: "+a.concreteString+" is not "+a.assertedString+": missing method "+a.missingMethod;};AB.prototype.Error=function(){return this.$val.Error();};AC.prototype.RuntimeError=function(){var $ptr,a;a=this.$val;};$ptrType(AC).prototype.RuntimeError=function(){return new AC(this.$get()).RuntimeError();};AC.prototype.Error=function(){var $ptr,a;a=this.$val;return"runtime error: "+a;};$ptrType(AC).prototype.Error=function(){return new AC(this.$get()).Error();};AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AC.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AB.init([{prop:"interfaceString",name:"interfaceString",pkg:"runtime",typ:$String,tag:""},{prop:"concreteString",name:"concreteString",pkg:"runtime",typ:$String,tag:""},{prop:"assertedString",name:"assertedString",pkg:"runtime",typ:$String,tag:""},{prop:"missingMethod",name:"missingMethod",pkg:"runtime",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=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["errors"]=(function(){var $pkg={},$init,B,C,A;B=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString","errorString","errors",function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});C=$ptrType(B);A=function(a){var $ptr,a;return new B.ptr(a);};$pkg.New=A;B.ptr.prototype.Error=function(){var $ptr,a;a=this;return a.s;};B.prototype.Error=function(){return this.$val.Error();};C.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];B.init([{prop:"s",name:"s",pkg:"errors",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sync/atomic"]=(function(){var $pkg={},$init,A,H,N,U,Y,AA;A=$packages["github.com/gopherjs/gopherjs/js"];H=function(ad,ae,af){var $ptr,ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=H;N=function(ad,ae){var $ptr,ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=N;U=function(ad){var $ptr,ad;return ad.$get();};$pkg.LoadUint32=U;Y=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreInt32=Y;AA=function(ad,ae){var $ptr,ad,ae;ad.$set(ae);};$pkg.StoreUint32=AA;$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["sync"]=(function(){var $pkg={},$init,B,A,E,N,O,P,Q,AF,AK,AL,AM,AN,AO,AP,AQ,AU,AX,AY,AZ,BA,BD,BI,BJ,BK,BL,G,T,D,F,H,I,J,R,U,V,AC,AI,AJ;B=$packages["runtime"];A=$packages["sync/atomic"];E=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool","Pool","sync",function(local_,localSize_,store_,New_){this.$val=this;if(arguments.length===0){this.local=0;this.localSize=0;this.store=AY.nil;this.New=$throwNilPointerError;return;}this.local=local_;this.localSize=localSize_;this.store=store_;this.New=New_;});N=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex","Mutex","sync",function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});O=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker","Locker","sync",null);P=$pkg.Once=$newType(0,$kindStruct,"sync.Once","Once","sync",function(m_,done_){this.$val=this;if(arguments.length===0){this.m=new N.ptr(0,0);this.done=0;return;}this.m=m_;this.done=done_;});Q=$pkg.poolLocal=$newType(0,$kindStruct,"sync.poolLocal","poolLocal","sync",function(private$0_,shared_,Mutex_,pad_){this.$val=this;if(arguments.length===0){this.private$0=$ifaceNil;this.shared=AY.nil;this.Mutex=new N.ptr(0,0);this.pad=BL.zero();return;}this.private$0=private$0_;this.shared=shared_;this.Mutex=Mutex_;this.pad=pad_;});AF=$pkg.syncSema=$newType(0,$kindStruct,"sync.syncSema","syncSema","sync",function(lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.lock=0;this.head=0;this.tail=0;return;}this.lock=lock_;this.head=head_;this.tail=tail_;});AK=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex","RWMutex","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AL=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker","rlocker","sync",function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new N.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});AM=$ptrType(E);AN=$sliceType(AM);AO=$ptrType($Uint32);AP=$chanType($Bool,false,false);AQ=$sliceType(AP);AU=$ptrType($Int32);AX=$ptrType(Q);AY=$sliceType($emptyInterface);AZ=$ptrType(AL);BA=$ptrType(AK);BD=$funcType([],[$emptyInterface],false);BI=$ptrType(N);BJ=$funcType([],[],false);BK=$ptrType(P);BL=$arrayType($Uint8,128);D=function(i){var $ptr,i;};E.ptr.prototype.Get=function(){var $ptr,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;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:i=this;if(i.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(i.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:j=i.New();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=6;case 6:return j;case 4:return $ifaceNil;case 2:m=(k=i.store,l=i.store.$length-1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));i.store=$subslice(i.store,0,(i.store.$length-1>>0));return m;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(i){var $ptr,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)){return;}j.store=$append(j.store,i);};E.prototype.Put=function(i){return this.$val.Put(i);};F=function(i){var $ptr,i;};H=function(i){var $ptr,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;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:if(i.$get()===0){$s=1;continue;}$s=2;continue;case 1:j=new $Chan($Bool,0);k=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(k)]={k:k,v:$append((l=G[AO.keyFor(i)],l!==undefined?l.v:AQ.nil),j)};m=$recv(j);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m[0];case 2:i.$set(i.$get()-(1)>>>0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I=function(i){var $ptr,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;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:i.$set(i.$get()+(1)>>>0);k=(j=G[AO.keyFor(i)],j!==undefined?j.v:AQ.nil);if(k.$length===0){return;}l=(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0]);k=$subslice(k,1);m=i;(G||$throwRuntimeError("assignment to entry in nil map"))[AO.keyFor(m)]={k:m,v:k};if(k.$length===0){delete G[AO.keyFor(i)];}$r=$send(l,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};J=function(i){var $ptr,i;return false;};N.ptr.prototype.Lock=function(){var $ptr,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;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:i=this;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),0,1)){return;}j=false;k=0;case 1:l=i.state;m=l|1;if(!(((l&1)===0))){$s=3;continue;}$s=4;continue;case 3:if(J(k)){if(!j&&((l&2)===0)&&!(((l>>2>>0)===0))&&A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,l|2)){j=true;}AJ();k=k+(1)>>0;$s=1;continue;}m=l+4>>0;case 4:if(j){if((m&2)===0){$panic(new $String("sync: inconsistent mutex state"));}m=(m&~(2))>>0;}if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),l,m)){$s=5;continue;}$s=6;continue;case 5:if((l&1)===0){$s=2;continue;}$r=H((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=true;k=0;case 6:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Lock=function(){return this.$val.Lock();};N.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),-1);if((((j+1>>0))&1)===0){$panic(new $String("sync: unlock of unlocked mutex"));}k=j;case 1:if(((k>>2>>0)===0)||!(((k&3)===0))){return;}j=((k-4>>0))|2;if(A.CompareAndSwapInt32((i.$ptr_state||(i.$ptr_state=new AU(function(){return this.$target.state;},function($v){this.$target.state=$v;},i))),k,j)){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_sema||(i.$ptr_sema=new AO(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:k=i.state;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.Unlock=function(){return this.$val.Unlock();};P.ptr.prototype.Do=function(i){var $ptr,i,j,$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;$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=this;if(A.LoadUint32((j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))))===1){return;}$r=j.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(j.m,"Unlock"),[]]);if(j.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([A.StoreUint32,[(j.$ptr_done||(j.$ptr_done=new AO(function(){return this.$target.done;},function($v){this.$target.done=$v;},j))),1]]);$r=i();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:P.ptr.prototype.Do};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};P.prototype.Do=function(i){return this.$val.Do(i);};R=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;i=T;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);((k<0||k>=T.$length)?$throwRuntimeError("index out of range"):T.$array[T.$offset+k]=AM.nil);m=0;while(true){if(!(m<(l.localSize>>0))){break;}n=V(l.local,m);n.private$0=$ifaceNil;o=n.shared;p=0;while(true){if(!(p=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+q]=$ifaceNil));p++;}n.shared=AY.nil;m=m+(1)>>0;}l.local=0;l.localSize=0;j++;}T=new AN([]);};U=function(){var $ptr;F(R);};V=function(i,j){var $ptr,i,j,k;return(k=i,(k.nilCheck,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j])));};AC=function(){var $ptr;};AI=function(){var $ptr,i;i=new AF.ptr(0,0,0);D(12);};AJ=function(){$panic("Native function not implemented: sync.runtime_doSpin");};AK.ptr.prototype.RLock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=H((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RLock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RLock=function(){return this.$val.RLock();};AK.ptr.prototype.RUnlock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1);if(j<0){$s=1;continue;}$s=2;continue;case 1:if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){AC();$panic(new $String("sync: RUnlock of unlocked RWMutex"));}if(A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),-1)===0){$s=3;continue;}$s=4;continue;case 3:$r=I((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.RUnlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.RUnlock=function(){return this.$val.RUnlock();};AK.ptr.prototype.Lock=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=i.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),-1073741824)+1073741824>>0;if(!((j===0))&&!((A.AddInt32((i.$ptr_readerWait||(i.$ptr_readerWait=new AU(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},i))),j)===0))){$s=2;continue;}$s=3;continue;case 2:$r=H((i.$ptr_writerSem||(i.$ptr_writerSem=new AO(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},i))));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Lock=function(){return this.$val.Lock();};AK.ptr.prototype.Unlock=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=A.AddInt32((i.$ptr_readerCount||(i.$ptr_readerCount=new AU(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},i))),1073741824);if(j>=1073741824){AC();$panic(new $String("sync: Unlock of unlocked RWMutex"));}k=0;case 1:if(!(k<(j>>0))){$s=2;continue;}$r=I((i.$ptr_readerSem||(i.$ptr_readerSem=new AO(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},i))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;$s=1;continue;case 2:$r=i.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.Unlock=function(){return this.$val.Unlock();};AK.ptr.prototype.RLocker=function(){var $ptr,i;i=this;return $pointerOfStructConversion(i,AZ);};AK.prototype.RLocker=function(){return this.$val.RLocker();};AL.ptr.prototype.Lock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Lock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Lock=function(){return this.$val.Lock();};AL.ptr.prototype.Unlock=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;$r=$pointerOfStructConversion(i,BA).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Unlock};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AL.prototype.Unlock=function(){return this.$val.Unlock();};AM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"getSlow",name:"getSlow",pkg:"sync",typ:$funcType([],[$emptyInterface],false)},{prop:"pin",name:"pin",pkg:"sync",typ:$funcType([],[AX],false)},{prop:"pinSlow",name:"pinSlow",pkg:"sync",typ:$funcType([],[AX],false)}];BI.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BK.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BJ],[],false)}];BA.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[O],false)}];AZ.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];E.init([{prop:"local",name:"local",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"localSize",name:"localSize",pkg:"sync",typ:$Uintptr,tag:""},{prop:"store",name:"store",pkg:"sync",typ:AY,tag:""},{prop:"New",name:"New",pkg:"",typ:BD,tag:""}]);N.init([{prop:"state",name:"state",pkg:"sync",typ:$Int32,tag:""},{prop:"sema",name:"sema",pkg:"sync",typ:$Uint32,tag:""}]);O.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);P.init([{prop:"m",name:"m",pkg:"sync",typ:N,tag:""},{prop:"done",name:"done",pkg:"sync",typ:$Uint32,tag:""}]);Q.init([{prop:"private$0",name:"private",pkg:"sync",typ:$emptyInterface,tag:""},{prop:"shared",name:"shared",pkg:"sync",typ:AY,tag:""},{prop:"Mutex",name:"",pkg:"",typ:N,tag:""},{prop:"pad",name:"pad",pkg:"sync",typ:BL,tag:""}]);AF.init([{prop:"lock",name:"lock",pkg:"sync",typ:$Uintptr,tag:""},{prop:"head",name:"head",pkg:"sync",typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",pkg:"sync",typ:$UnsafePointer,tag:""}]);AK.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,tag:""}]);AL.init([{prop:"w",name:"w",pkg:"sync",typ:N,tag:""},{prop:"writerSem",name:"writerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",pkg:"sync",typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",pkg:"sync",typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",pkg:"sync",typ:$Int32,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;}T=AN.nil;G={};U();AI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io"]=(function(){var $pkg={},$init,A,B,C,D,H,N,O,R,U,AX,AI,AJ,Y,Z;A=$packages["errors"];B=$packages["sync"];C=$pkg.Reader=$newType(8,$kindInterface,"io.Reader","Reader","io",null);D=$pkg.Writer=$newType(8,$kindInterface,"io.Writer","Writer","io",null);H=$pkg.ReadCloser=$newType(8,$kindInterface,"io.ReadCloser","ReadCloser","io",null);N=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom","ReaderFrom","io",null);O=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo","WriterTo","io",null);R=$pkg.ByteReader=$newType(8,$kindInterface,"io.ByteReader","ByteReader","io",null);U=$pkg.RuneReader=$newType(8,$kindInterface,"io.RuneReader","RuneReader","io",null);AX=$sliceType($Uint8);Y=function(a,b,c){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:d=0;e=$ifaceNil;if(b.$length>0;$s=1;continue;case 2:if(d>=c){e=$ifaceNil;}else if(d>0&&$interfaceIsEqual(e,$pkg.EOF)){e=$pkg.ErrUnexpectedEOF;}return[d,e];}return;}if($f===undefined){$f={$blk:Y};}$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;};$pkg.ReadAtLeast=Y;Z=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=0;d=$ifaceNil;f=Y(a,b,b.$length);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];d=e[1];$s=2;case 2:return[c,d];}return;}if($f===undefined){$f={$blk:Z};}$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.ReadFull=Z;C.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);D.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);H.init([{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AX],[$Int,$error],false)}]);N.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C],[$Int64,$error],false)}]);O.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D],[$Int64,$error],false)}]);R.init([{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);U.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$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;}$pkg.ErrShortWrite=A.New("short write");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AI=A.New("Seek: invalid whence");AJ=A.New("Seek: invalid offset");$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");}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,FH,FI,FJ,FK,FL,B,C,D,E,AQ,EO,N,W,AL,AM,AN,AR,AS,AU,EQ;A=$packages["github.com/gopherjs/gopherjs/js"];FH=$arrayType($Uint32,2);FI=$arrayType($Float32,2);FJ=$arrayType($Float64,1);FK=$structType([{prop:"uint32array",name:"uint32array",pkg:"math",typ:FH,tag:""},{prop:"float32array",name:"float32array",pkg:"math",typ:FI,tag:""},{prop:"float64array",name:"float64array",pkg:"math",typ:FJ,tag:""}]);FL=$arrayType($Float64,70);N=function(ao){var $ptr,ao;return $parseFloat(B.cos(ao));};$pkg.Cos=N;W=function(ao,ap){var $ptr,ao,ap;if(ao===D){return ap>=0;}if(ao===E){return ap<=0;}return false;};$pkg.IsInf=W;AL=function(ao){var $ptr,ao;return $parseFloat(B.sin(ao));};$pkg.Sin=AL;AM=function(ao){var $ptr,ao,ap,aq,ar,as;ap=0;aq=0;ar=AL(ao);as=N(ao);ap=ar;aq=as;return[ap,aq];};$pkg.Sincos=AM;AN=function(ao){var $ptr,ao;return $parseFloat(B.sqrt(ao));};$pkg.Sqrt=AN;AR=function(){var $ptr,ao;ao=new($global.ArrayBuffer)(8);AQ.uint32array=new($global.Uint32Array)(ao);AQ.float32array=new($global.Float32Array)(ao);AQ.float64array=new($global.Float64Array)(ao);};AS=function(ao){var $ptr,ao;AQ.float32array[0]=ao;return AQ.uint32array[0];};$pkg.Float32bits=AS;AU=function(ao){var $ptr,ao,ap,aq;AQ.float64array[0]=ao;return(ap=$shiftLeft64(new $Uint64(0,AQ.uint32array[1]),32),aq=new $Uint64(0,AQ.uint32array[0]),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));};$pkg.Float64bits=AU;EQ=function(){var $ptr,ao,ap,aq,ar;EO[0]=1;EO[1]=10;ao=2;while(true){if(!(ao<70)){break;}aq=(ap=ao/2,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));((ao<0||ao>=EO.length)?$throwRuntimeError("index out of range"):EO[ao]=((aq<0||aq>=EO.length)?$throwRuntimeError("index out of range"):EO[aq])*(ar=ao-aq>>0,((ar<0||ar>=EO.length)?$throwRuntimeError("index out of range"):EO[ar])));ao=ao+(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;}AQ=new FK.ptr(FH.zero(),FI.zero(),FJ.zero());EO=FL.zero();B=$global.Math;C=0;D=1/C;E=-1/C;AR();EQ();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["unicode"]=(function(){var $pkg={},$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:}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,A,B,C,E,F,G,I,J,K,L,M;A=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,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=false;e=a.$length;if(e<1){f=65533;g=0;h=true;b=f;c=g;d=h;return[b,c,d];}i=(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]);if(i<128){j=(i>>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0);k=1;l=false;b=j;c=k;d=l;return[b,c,d];}if(i<192){m=65533;n=1;o=false;b=m;c=n;d=o;return[b,c,d];}if(e<2){p=65533;q=1;r=true;b=p;c=q;d=r;return[b,c,d];}s=a.charCodeAt(1);if(s<128||192<=s){t=65533;u=1;v=false;b=t;c=u;d=v;return[b,c,d];}if(i<224){b=((((i&31)>>>0)>>0)<<6>>0)|(((s&63)>>>0)>>0);if(b<=127){w=65533;x=1;y=false;b=w;c=x;d=y;return[b,c,d];}z=b;aa=2;ab=false;b=z;c=aa;d=ab;return[b,c,d];}if(e<3){ac=65533;ad=1;ae=true;b=ac;c=ad;d=ae;return[b,c,d];}af=a.charCodeAt(2);if(af<128||192<=af){ag=65533;ah=1;ai=false;b=ag;c=ah;d=ai;return[b,c,d];}if(i<240){b=(((((i&15)>>>0)>>0)<<12>>0)|((((s&63)>>>0)>>0)<<6>>0))|(((af&63)>>>0)>>0);if(b<=2047){aj=65533;ak=1;al=false;b=aj;c=ak;d=al;return[b,c,d];}if(55296<=b&&b<=57343){am=65533;an=1;ao=false;b=am;c=an;d=ao;return[b,c,d];}ap=b;aq=3;ar=false;b=ap;c=aq;d=ar;return[b,c,d];}if(e<4){as=65533;at=1;au=true;b=as;c=at;d=au;return[b,c,d];}av=a.charCodeAt(3);if(av<128||192<=av){aw=65533;ax=1;ay=false;b=aw;c=ax;d=ay;return[b,c,d];}if(i<248){b=((((((i&7)>>>0)>>0)<<18>>0)|((((s&63)>>>0)>>0)<<12>>0))|((((af&63)>>>0)>>0)<<6>>0))|(((av&63)>>>0)>>0);if(b<=65535||1114111>0;b=(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):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(M(((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=E($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=G;I=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=I;J=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if(c>1114111||55296<=c&&c<=57343){b=65533;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=J;K=function(a){var $ptr,a,b,c,d,e;b=0;c=0;c=0;while(true){if(!(b=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+b])<128){b=b+(1)>>0;}else{d=E($subslice(a,b));e=d[1];b=b+(e)>>0;}c=c+(1)>>0;}return c;};$pkg.RuneCount=K;L=function(a){var $ptr,a,b,c,d,e;b=0;c=a;d=0;while(true){if(!(d>0;d+=e[1];}return b;};$pkg.RuneCountInString=L;M=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=M;$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["bytes"]=(function(){var $pkg={},$init,A,B,D,C,H,I,BK,BL,BM,BN,E,J,K;A=$packages["errors"];B=$packages["io"];D=$packages["unicode"];C=$packages["unicode/utf8"];H=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer","Buffer","bytes",function(buf_,off_,runeBytes_,bootstrap_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=BL.nil;this.off=0;this.runeBytes=BM.zero();this.bootstrap=BN.zero();this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.runeBytes=runeBytes_;this.bootstrap=bootstrap_;this.lastRead=lastRead_;});I=$pkg.readOp=$newType(4,$kindInt,"bytes.readOp","readOp","bytes",null);BK=$ptrType(H);BL=$sliceType($Uint8);BM=$arrayType($Uint8,4);BN=$arrayType($Uint8,64);E=function(d,e){var $ptr,d,e,f,g,h,i;f=d;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=E;H.ptr.prototype.Bytes=function(){var $ptr,d;d=this;return $subslice(d.buf,d.off);};H.prototype.Bytes=function(){return this.$val.Bytes();};H.ptr.prototype.String=function(){var $ptr,d;d=this;if(d===BK.nil){return"";}return $bytesToString($subslice(d.buf,d.off));};H.prototype.String=function(){return this.$val.String();};H.ptr.prototype.Len=function(){var $ptr,d;d=this;return d.buf.$length-d.off>>0;};H.prototype.Len=function(){return this.$val.Len();};H.ptr.prototype.Cap=function(){var $ptr,d;d=this;return d.buf.$capacity;};H.prototype.Cap=function(){return this.$val.Cap();};H.ptr.prototype.Truncate=function(d){var $ptr,d,e;e=this;e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}else if(d===0){e.off=0;}e.buf=$subslice(e.buf,0,(e.off+d>>0));};H.prototype.Truncate=function(d){return this.$val.Truncate(d);};H.ptr.prototype.Reset=function(){var $ptr,d;d=this;d.Truncate(0);};H.prototype.Reset=function(){return this.$val.Reset();};H.ptr.prototype.grow=function(d){var $ptr,d,e,f,g,h;e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Truncate(0);}if((e.buf.$length+d>>0)>e.buf.$capacity){g=BL.nil;if(e.buf===BL.nil&&d<=64){g=$subslice(new BL(e.bootstrap),0);}else if((f+d>>0)<=(h=e.buf.$capacity/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))){$copySlice(e.buf,$subslice(e.buf,e.off));g=$subslice(e.buf,0,f);}else{g=J(($imul(2,e.buf.$capacity))+d>>0);$copySlice(g,$subslice(e.buf,e.off));}e.buf=g;e.off=0;}e.buf=$subslice(e.buf,0,((e.off+f>>0)+d>>0));return e.off+f>>0;};H.prototype.grow=function(d){return this.$val.grow(d);};H.ptr.prototype.Grow=function(d){var $ptr,d,e,f;e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);e.buf=$subslice(e.buf,0,f);};H.prototype.Grow=function(d){return this.$val.Grow(d);};H.ptr.prototype.Write=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.$length);i=$copySlice($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.Write=function(d){return this.$val.Write(d);};H.ptr.prototype.WriteString=function(d){var $ptr,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.grow(d.length);i=$copyString($subslice(g.buf,h),d);j=$ifaceNil;e=i;f=j;return[e,f];};H.prototype.WriteString=function(d){return this.$val.WriteString(d);};H.ptr.prototype.ReadFrom=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);}case 1:h=g.buf.$capacity-g.buf.$length>>0;if(h<512){i=g.buf;if((g.off+h>>0)<512){i=J(($imul(2,g.buf.$capacity))+512>>0);}$copySlice(i,$subslice(g.buf,g.off));g.buf=$subslice(i,0,(g.buf.$length-g.off>>0));g.off=0;}k=d.Read($subslice(g.buf,g.buf.$length,g.buf.$capacity));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];g.buf=$subslice(g.buf,0,(g.buf.$length+l>>0));e=(n=new $Int64(0,l),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){$s=2;continue;}if(!($interfaceIsEqual(m,$ifaceNil))){o=e;p=m;e=o;f=p;return[e,f];}$s=1;continue;case 2:q=e;r=$ifaceNil;e=q;f=r;return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.ReadFrom};}$f.$ptr=$ptr;$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;};H.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};J=function(d){var $ptr,d,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);return $makeSlice(BL,d);}catch(err){$err=err;return BL.nil;}finally{$callDeferred($deferred,$err);}};H.ptr.prototype.WriteTo=function(d){var $ptr,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;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=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;if(g.offh){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=new $Int64(0,k);if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;return[e,f];}case 2:g.Truncate(0);return[e,f];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.WriteTo};}$f.$ptr=$ptr;$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;};H.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};H.ptr.prototype.WriteByte=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.grow(1);(g=e.buf,((f<0||f>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+f]=d));return $ifaceNil;};H.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};H.ptr.prototype.WriteRune=function(d){var $ptr,d,e,f,g,h,i,j,k;e=0;f=$ifaceNil;g=this;if(d<128){g.WriteByte((d<<24>>>24));h=1;i=$ifaceNil;e=h;f=i;return[e,f];}e=C.EncodeRune($subslice(new BL(g.runeBytes),0),d);g.Write($subslice(new BL(g.runeBytes),0,e));j=e;k=$ifaceNil;e=j;f=k;return[e,f];};H.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};H.ptr.prototype.Read=function(d){var $ptr,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);if(d.$length===0){return[e,f];}h=0;i=B.EOF;e=h;f=i;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=2;}return[e,f];};H.prototype.Read=function(d){return this.$val.Read(d);};H.ptr.prototype.Next=function(d){var $ptr,d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=2;}return g;};H.prototype.Next=function(d){return this.$val.Next(d);};H.ptr.prototype.ReadByte=function(){var $ptr,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;f.lastRead=0;if(f.off>=f.buf.$length){f.Truncate(0);g=0;h=B.EOF;d=g;e=h;return[d,e];}d=(i=f.buf,j=f.off,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]));f.off=f.off+(1)>>0;f.lastRead=2;k=d;l=$ifaceNil;d=k;e=l;return[d,e];};H.prototype.ReadByte=function(){return this.$val.ReadByte();};H.ptr.prototype.ReadRune=function(){var $ptr,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.off>=g.buf.$length){g.Truncate(0);h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}g.lastRead=1;m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;n=(m>>0);o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};H.prototype.ReadRune=function(){return this.$val.ReadRune();};H.ptr.prototype.UnreadRune=function(){var $ptr,d,e,f;d=this;if(!((d.lastRead===1))){return A.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");}d.lastRead=0;if(d.off>0){e=C.DecodeLastRune($subslice(d.buf,0,d.off));f=e[1];d.off=d.off-(f)>>0;}return $ifaceNil;};H.prototype.UnreadRune=function(){return this.$val.UnreadRune();};H.ptr.prototype.UnreadByte=function(){var $ptr,d;d=this;if(!((d.lastRead===1))&&!((d.lastRead===2))){return A.New("bytes.Buffer: UnreadByte: previous operation was not a read");}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};H.prototype.UnreadByte=function(){return this.$val.UnreadByte();};H.ptr.prototype.ReadBytes=function(d){var $ptr,d,e,f,g,h,i;e=BL.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);return[e,f];};H.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};H.ptr.prototype.readSlice=function(d){var $ptr,d,e,f,g,h,i,j,k;e=BL.nil;f=$ifaceNil;g=this;h=E($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=2;j=e;k=f;e=j;f=k;return[e,f];};H.prototype.readSlice=function(d){return this.$val.readSlice(d);};H.ptr.prototype.ReadString=function(d){var $ptr,d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=$bytesToString(i);k=f;e=j;f=k;return[e,f];};H.prototype.ReadString=function(d){return this.$val.ReadString(d);};K=function(d){var $ptr,d;return new H.ptr(d,0,BM.zero(),BN.zero(),0);};$pkg.NewBuffer=K;BK.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[BL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BL],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[BL],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[BL,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];H.init([{prop:"buf",name:"buf",pkg:"bytes",typ:BL,tag:""},{prop:"off",name:"off",pkg:"bytes",typ:$Int,tag:""},{prop:"runeBytes",name:"runeBytes",pkg:"bytes",typ:BM,tag:""},{prop:"bootstrap",name:"bootstrap",pkg:"bytes",typ:BN,tag:""},{prop:"lastRead",name:"lastRead",pkg:"bytes",typ:I,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=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;}$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");}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,E,B,C,D,EW,EX,KP,KS,KY,LG,MN,MP,MW,MZ,NQ,NR,NZ,OI,OJ,OK,ON,OW,OX,OY,OZ,PD,PE,F,G,N,O,P,AP,AQ,AR,AS,BY,DZ,EY,EZ,FA,GC,H,I,J,K,L,Q,R,S,V,AU,AW,BZ,CW,CX,CZ,DE,DU,EE,EF,FB,FD,FE,GW,HK,HO,HP,HR,HS,HV,HX,HY,HZ,IS,JD,JE,JF,JK,KI,KJ,KK;A=$packages["bytes"];E=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["runtime"];D=$packages["sync"];EW=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper","mmapper","syscall",function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new D.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_;});EX=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno","Errno","syscall",null);KP=$pkg._C_int=$newType(4,$kindInt32,"syscall._C_int","_C_int","syscall",null);KS=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec","Timespec","syscall",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_;});KY=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t","Stat_t","syscall",function(Dev_,Mode_,Nlink_,Ino_,Uid_,Gid_,Rdev_,Pad_cgo_0_,Atimespec_,Mtimespec_,Ctimespec_,Birthtimespec_,Size_,Blocks_,Blksize_,Flags_,Gen_,Lspare_,Qspare_){this.$val=this;if(arguments.length===0){this.Dev=0;this.Mode=0;this.Nlink=0;this.Ino=new $Uint64(0,0);this.Uid=0;this.Gid=0;this.Rdev=0;this.Pad_cgo_0=MZ.zero();this.Atimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Birthtimespec=new KS.ptr(new $Int64(0,0),new $Int64(0,0));this.Size=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Blksize=0;this.Flags=0;this.Gen=0;this.Lspare=0;this.Qspare=PE.zero();return;}this.Dev=Dev_;this.Mode=Mode_;this.Nlink=Nlink_;this.Ino=Ino_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Pad_cgo_0=Pad_cgo_0_;this.Atimespec=Atimespec_;this.Mtimespec=Mtimespec_;this.Ctimespec=Ctimespec_;this.Birthtimespec=Birthtimespec_;this.Size=Size_;this.Blocks=Blocks_;this.Blksize=Blksize_;this.Flags=Flags_;this.Gen=Gen_;this.Lspare=Lspare_;this.Qspare=Qspare_;});LG=$pkg.Dirent=$newType(0,$kindStruct,"syscall.Dirent","Dirent","syscall",function(Ino_,Seekoff_,Reclen_,Namlen_,Type_,Name_,Pad_cgo_0_){this.$val=this;if(arguments.length===0){this.Ino=new $Uint64(0,0);this.Seekoff=new $Uint64(0,0);this.Reclen=0;this.Namlen=0;this.Type=0;this.Name=OJ.zero();this.Pad_cgo_0=OK.zero();return;}this.Ino=Ino_;this.Seekoff=Seekoff_;this.Reclen=Reclen_;this.Namlen=Namlen_;this.Type=Type_;this.Name=Name_;this.Pad_cgo_0=Pad_cgo_0_;});MN=$sliceType($Uint8);MP=$sliceType($String);MW=$ptrType($Uint8);MZ=$arrayType($Uint8,4);NQ=$sliceType(KP);NR=$ptrType($Uintptr);NZ=$arrayType($Uint8,32);OI=$arrayType(KP,14);OJ=$arrayType($Int8,1024);OK=$arrayType($Uint8,3);ON=$structType([{prop:"addr",name:"addr",pkg:"syscall",typ:$Uintptr,tag:""},{prop:"len",name:"len",pkg:"syscall",typ:$Int,tag:""},{prop:"cap",name:"cap",pkg:"syscall",typ:$Int,tag:""}]);OW=$ptrType(EW);OX=$mapType(MW,MN);OY=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);OZ=$funcType([$Uintptr,$Uintptr],[$error],false);PD=$ptrType(KS);PE=$arrayType($Int64,2);H=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((G.$length===0))){$global.console.log($externalize($bytesToString(G),$String));G=MN.nil;}});};I=function(){var $ptr;if(!F){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}F=true;};J=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}G=$appendSlice(G,i);while(true){k=A.IndexByte(G,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(G,0,k)),$String));G=$subslice(G,(k+1>>0));}};K=function(i){var $ptr,i;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return MP.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(MP,$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"):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===4)&&((j===1)||(j===2))){u=k;v=$makeSlice(MN,$parseInt(u.length));v.$array=u;J(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===1){C.Goexit();}I();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))){I();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new MN($stringToBytes(i));l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(n===0){return[MW.nil,new EX(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;AU=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AR={};i=AS;j=0;while(true){if(!(j=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]);m=0;while(true){if(!(m=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AW=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=AP.Do(AU);$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;return[j,k];}$r=AQ.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AQ,"RUnlock"),[]]);n=(o=AR[$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;return[j,k];}t=((p<0||p>=AS.$length)?$throwRuntimeError("index out of range"):AS.$array[AS.$offset+p]);u=0;while(true){if(!(u>0));w=true;j=v;k=w;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;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:AW};}$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=AW;BZ=function(i){var $ptr,i,j;j=8;j=4;if(i===0){return j;}return(((i+j>>0)-1>>0))&(~((j-1>>0))>>0);};CW=function(i){var $ptr,i;if(i<0){return"-"+CX((-i>>>0));}return CX((i>>>0));};CX=function(i){var $ptr,i,j,k,l,m;j=NZ.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?$throwRuntimeError("index out of range"):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"):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new MN(j),k));};CZ=function(i){var $ptr,i,j,k;j=0;while(true){if(!(j>0;}k=$makeSlice(MN,(i.length+1>>0));$copyString(k,i);return[k,$ifaceNil];};$pkg.ByteSliceFromString=CZ;KS.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];};KS.prototype.Unix=function(){return this.$val.Unix();};KS.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));};KS.prototype.Nano=function(){return this.$val.Nano();};DE=function(i,j){var $ptr,i,j,k,l,m,n;k=0;l=$ifaceNil;m=new Uint8Array(8);n=HZ(i,j,m);k=n[0];l=n[1];return[k,l];};$pkg.ReadDirent=DE;DU=function(i){var $ptr,aa,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=$ifaceNil;l=EE(i);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){n="";o=k;j=n;k=o;return[j,k];}p=0;k=GW(m,MW.nil,(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){r="";s=k;j=r;k=s;return[j,k];}if(p===0){t="";u=$ifaceNil;j=t;k=u;return[j,k];}v=$makeSlice(MN,p);k=GW(m,$indexPtr(v.$array,v.$offset+0,MW),(q||(q=new NR(function(){return p;},function($v){p=$v;}))),MW.nil,0);if(!($interfaceIsEqual(k,$ifaceNil))){w="";x=k;j=w;k=x;return[j,k];}if(p>0&&((y=p-1>>>0,((y<0||y>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+y]))===0)){p=p-(1)>>>0;}z=$bytesToString($subslice(v,0,p));aa=$ifaceNil;j=z;k=aa;return[j,k];};$pkg.Sysctl=DU;EE=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;j=NQ.nil;k=$ifaceNil;l=OI.zero();m=48;n=$sliceToArray(new MN(l));o=CZ(i);p=o[0];k=o[1];if(!($interfaceIsEqual(k,$ifaceNil))){q=NQ.nil;r=k;j=q;k=r;return[j,k];}k=GW(new NQ([0,3]),n,(s||(s=new NR(function(){return m;},function($v){m=$v;}))),$indexPtr(p.$array,p.$offset+0,MW),(i.length>>>0));if(!($interfaceIsEqual(k,$ifaceNil))){t=NQ.nil;u=k;j=t;k=u;return[j,k];}v=$subslice(new NQ(l),0,(w=m/4,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero")));x=$ifaceNil;j=v;k=x;return[j,k];};EF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;l=0;m=0;n=MP.nil;o=i.$length;while(true){if(!(!((j===0))&&i.$length>0)){break;}s=(p=$sliceToArray(i),q=new LG.ptr(new $Uint64(0,0),new $Uint64(0,0),0,0,0,OJ.zero(),OK.zero()),r=new DataView(p.buffer,p.byteOffset),q.Ino=new $Uint64(r.getUint32(4,true),r.getUint32(0,true)),q.Seekoff=new $Uint64(r.getUint32(12,true),r.getUint32(8,true)),q.Reclen=r.getUint16(16,true),q.Namlen=r.getUint16(18,true),q.Type=r.getUint8(20,true),q.Name=new($nativeArray($kindInt8))(p.buffer,$min(p.byteOffset+21,p.buffer.byteLength)),q.Pad_cgo_0=new($nativeArray($kindUint8))(p.buffer,$min(p.byteOffset+1045,p.buffer.byteLength)),q);if(s.Reclen===0){i=MN.nil;break;}i=$subslice(i,s.Reclen);if((t=s.Ino,(t.$high===0&&t.$low===0))){continue;}u=$sliceToArray(new MN(s.Name));v=$bytesToString($subslice(new MN(u),0,s.Namlen));if(v==="."||v===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,v);}w=o-i.$length>>0;x=m;y=k;l=w;m=x;n=y;return[l,m,n];};$pkg.ParseDirent=EF;EW.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=MN.nil;p=$ifaceNil;q=this;if(k<=0){r=MN.nil;s=new EX(22);o=r;p=s;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=MN.nil;y=w;o=x;p=y;return[o,p];}n[0]=new ON.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),MW);$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"))[MW.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;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:EW.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;}}};EW.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};EW.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 EX(22);return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),MW);$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[MW.keyFor(l)],m!==undefined?m.v:MN.nil);if(n===MN.nil||!($indexPtr(n.$array,n.$offset+0,MW)===$indexPtr(i.$array,i.$offset+0,MW))){j=new EX(22);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))){$s=3;continue;}$s=4;continue;case 3:j=p;return j;case 4:delete k.active[MW.keyFor(l)];j=$ifaceNil;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:EW.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;}}};EW.prototype.Munmap=function(i){return this.$val.Munmap(i);};EX.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<106){j=((i<0||i>=GC.length)?$throwRuntimeError("index out of range"):GC[i]);if(!(j==="")){return j;}}return"errno "+CW((i>>0));};$ptrType(EX).prototype.Error=function(){return new EX(this.$get()).Error();};EX.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===54)||(i===53)||new EX(i).Timeout();};$ptrType(EX).prototype.Temporary=function(){return new EX(this.$get()).Temporary();};EX.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===35)||(i===35)||(i===60);};$ptrType(EX).prototype.Timeout=function(){return new EX(this.$get()).Timeout();};FB=function(i){var $ptr,i,j;j=i;if(j===0){return $ifaceNil;}else if(j===35){return EY;}else if(j===22){return EZ;}else if(j===2){return FA;}return new EX(i);};FD=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JF(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Read=FD;FE=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=KI(i,j);k=m[0];l=m[1];return[k,l];};$pkg.Write=FE;GW=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(i.$length>0){o=$sliceToArray(i);}else{o=new Uint8Array(0);}p=S(202,o,(i.$length>>>0),j,k,l,m);q=p[2];if(!((q===0))){n=FB(q);}return n;};HK=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(6,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Close=HK;HO=function(i){var $ptr,i;R(1,(i>>>0),0,0);return;};$pkg.Exit=HO;HP=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(13,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fchdir=HP;HR=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(124,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Fchmod=HR;HS=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(123,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FB(n);}return l;};$pkg.Fchown=HS;HV=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(339,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=o.getInt32(0,true),n.Mode=o.getUint16(4,true),n.Nlink=o.getUint16(6,true),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Uid=o.getUint32(16,true),n.Gid=o.getUint32(20,true),n.Rdev=o.getInt32(24,true),n.Pad_cgo_0=new($nativeArray($kindUint8))(m.buffer,$min(m.byteOffset+28,m.buffer.byteLength)),n.Atimespec.Sec=new $Int64(o.getUint32(36,true),o.getUint32(32,true)),n.Atimespec.Nsec=new $Int64(o.getUint32(44,true),o.getUint32(40,true)),n.Mtimespec.Sec=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Mtimespec.Nsec=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Ctimespec.Sec=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Ctimespec.Nsec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Birthtimespec.Sec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Birthtimespec.Nsec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Size=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Blocks=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Blksize=o.getInt32(112,true),n.Flags=o.getUint32(116,true),n.Gen=o.getUint32(120,true),n.Lspare=o.getInt32(124,true),n.Qspare=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+128,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FB(p);}return k;};$pkg.Fstat=HV;HX=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(95,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FB(l);}return j;};$pkg.Fsync=HX;HY=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(201,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FB(m);}return k;};$pkg.Ftruncate=HY;HZ=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(344,(i>>>0),n,(j.$length>>>0),k,0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Getdirentries=HZ;IS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=MW.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(340,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=q.getInt32(0,true),p.Mode=q.getUint16(4,true),p.Nlink=q.getUint16(6,true),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Uid=q.getUint32(16,true),p.Gid=q.getUint32(20,true),p.Rdev=q.getInt32(24,true),p.Pad_cgo_0=new($nativeArray($kindUint8))(o.buffer,$min(o.byteOffset+28,o.buffer.byteLength)),p.Atimespec.Sec=new $Int64(q.getUint32(36,true),q.getUint32(32,true)),p.Atimespec.Nsec=new $Int64(q.getUint32(44,true),q.getUint32(40,true)),p.Mtimespec.Sec=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Mtimespec.Nsec=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Ctimespec.Sec=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Ctimespec.Nsec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Birthtimespec.Sec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Birthtimespec.Nsec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Size=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Blocks=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Blksize=q.getInt32(112,true),p.Flags=q.getUint32(116,true),p.Gen=q.getUint32(120,true),p.Lspare=q.getInt32(124,true),p.Qspare=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+128,o.buffer.byteLength));r=n[2];K(l);if(!((r===0))){k=FB(r);}return k;};$pkg.Lstat=IS;JD=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(153,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pread=JD;JE=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(154,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FB(q);}return[l,m];};$pkg.Pwrite=JE;JF=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(3,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};JK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(199,(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=FB(p);}return[l,m];};$pkg.Seek=JK;KI=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(4,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FB(p);}return[k,l];};KJ=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(197,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FB(s);}return[o,p];};KK=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(73,i,j,0);m=l[2];if(!((m===0))){k=FB(m);}return k;};OW.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[MN,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([MN],[$error],false)}];EX.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)}];PD.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];EW.init([{prop:"Mutex",name:"",pkg:"",typ:D.Mutex,tag:""},{prop:"active",name:"active",pkg:"syscall",typ:OX,tag:""},{prop:"mmap",name:"mmap",pkg:"syscall",typ:OY,tag:""},{prop:"munmap",name:"munmap",pkg:"syscall",typ:OZ,tag:""}]);KS.init([{prop:"Sec",name:"Sec",pkg:"",typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",pkg:"",typ:$Int64,tag:""}]);KY.init([{prop:"Dev",name:"Dev",pkg:"",typ:$Int32,tag:""},{prop:"Mode",name:"Mode",pkg:"",typ:$Uint16,tag:""},{prop:"Nlink",name:"Nlink",pkg:"",typ:$Uint16,tag:""},{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Uid",name:"Uid",pkg:"",typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",pkg:"",typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",pkg:"",typ:$Int32,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:MZ,tag:""},{prop:"Atimespec",name:"Atimespec",pkg:"",typ:KS,tag:""},{prop:"Mtimespec",name:"Mtimespec",pkg:"",typ:KS,tag:""},{prop:"Ctimespec",name:"Ctimespec",pkg:"",typ:KS,tag:""},{prop:"Birthtimespec",name:"Birthtimespec",pkg:"",typ:KS,tag:""},{prop:"Size",name:"Size",pkg:"",typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",pkg:"",typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",pkg:"",typ:$Int32,tag:""},{prop:"Flags",name:"Flags",pkg:"",typ:$Uint32,tag:""},{prop:"Gen",name:"Gen",pkg:"",typ:$Uint32,tag:""},{prop:"Lspare",name:"Lspare",pkg:"",typ:$Int32,tag:""},{prop:"Qspare",name:"Qspare",pkg:"",typ:PE,tag:""}]);LG.init([{prop:"Ino",name:"Ino",pkg:"",typ:$Uint64,tag:""},{prop:"Seekoff",name:"Seekoff",pkg:"",typ:$Uint64,tag:""},{prop:"Reclen",name:"Reclen",pkg:"",typ:$Uint16,tag:""},{prop:"Namlen",name:"Namlen",pkg:"",typ:$Uint16,tag:""},{prop:"Type",name:"Type",pkg:"",typ:$Uint8,tag:""},{prop:"Name",name:"Name",pkg:"",typ:OJ,tag:""},{prop:"Pad_cgo_0",name:"Pad_cgo_0",pkg:"",typ:OK,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=E.$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;}G=MN.nil;N=null;AP=new D.Once.ptr(new D.Mutex.ptr(0,0),0);AQ=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);AR=false;F=false;O=false;P=-1;AS=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;EY=new EX(35);EZ=new EX(22);FA=new EX(2);GC=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","device not configured","argument list too long","exec format error","bad file descriptor","no child processes","resource deadlock avoided","cannot allocate memory","permission denied","bad address","block device required","resource busy","file exists","cross-device link","operation not supported by 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","result too large","resource temporarily unavailable","operation now in progress","operation already in progress","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 family","address already in use","can't 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","socket is already connected","socket is not connected","can't send after socket shutdown","too many references: can't splice","operation timed out","connection refused","too many levels of symbolic links","file name too long","host is down","no route to host","directory not empty","too many processes","too many users","disc quota exceeded","stale NFS file handle","too many levels of remote in path","RPC struct is bad","RPC version wrong","RPC prog. not avail","program version wrong","bad procedure for program","no locks available","function not implemented","inappropriate file type or format","authentication error","need authenticator","device power is off","device error","value too large to be stored in data type","bad executable (or shared library)","bad CPU type in executable","shared library version mismatch","malformed Mach-o file","operation canceled","identifier removed","no message of desired type","illegal byte sequence","attribute not found","bad message","EMULTIHOP (Reserved)","no message available on STREAM","ENOLINK (Reserved)","no STREAM resources","not a STREAM","protocol error","STREAM ioctl timeout","operation not supported on socket","policy not found","state not recoverable","previous owner died"]);DZ=new EW.ptr(new D.Mutex.ptr(0,0),{},KJ,KK);BY=BZ(0);H();}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,F,I,J;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex","Mutex","github.com/gopherjs/gopherjs/nosync",function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once","Once","github.com/gopherjs/gopherjs/nosync",function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);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){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;case-1:}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);};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)}];A.init([{prop:"locked",name:"locked",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""}]);D.init([{prop:"doing",name:"doing",pkg:"github.com/gopherjs/gopherjs/nosync",typ:$Bool,tag:""},{prop:"done",name:"done",pkg:"github.com/gopherjs/gopherjs/nosync",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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["strings"]=(function(){var $pkg={},$init,C,B,D,E,A,CA,F,G,I,BW;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["io"];E=$packages["unicode"];A=$packages["unicode/utf8"];CA=$sliceType($Uint8);F=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf($global.String.fromCharCode(f)))>>0;};$pkg.IndexByte=F;G=function(e,f){var $ptr,e,f;return $parseInt(e.indexOf(f))>>0;};$pkg.Index=G;I=function(e,f){var $ptr,e,f,g,h;g=0;if(f.length===0){return A.RuneCountInString(e)+1>>0;}else if(f.length>e.length){return 0;}else if(f.length===e.length){if(f===e){return 1;}return 0;}while(true){h=G(e,f);if(h===-1){break;}g=g+(1)>>0;e=e.substring((h+f.length>>0));}return g;};$pkg.Count=I;BW=function(e,f,g,h){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;if(f===g||(h===0)){return e;}i=I(e,f);if(i===0){return e;}else if(h<0||i>0))))>>0));k=0;l=0;m=0;while(true){if(!(m0){o=A.DecodeRuneInString(e.substring(l));p=o[1];n=n+(p)>>0;}}else{n=n+(G(e.substring(l),f))>>0;}k=k+($copyString($subslice(j,k),e.substring(l,n)))>>0;k=k+($copyString($subslice(j,k),g))>>0;l=n+f.length>>0;m=m+(1)>>0;}k=k+($copyString($subslice(j,k),e.substring(l)))>>0;return $bytesToString($subslice(j,0,k));};$pkg.Replace=BW;$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=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$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;}}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,D,C,F,A,B,E,AF,BL,BM,BO,BS,CF,CG,CH,CY,CZ,DA,DB,DD,DE,DF,DG,DH,DL,DP,DT,R,U,V,W,X,AB,AE,AR,BN,BP,BX,CI,CW,CJ,CX,CK,CM,CQ,g,h,G,I,J,K,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,BQ,BR,BT,BU,BW,BZ,CA,CB,CC,CD,CE,CL;D=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];B=$packages["strings"];E=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError","ParseError","time",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_;});BL=$pkg.Time=$newType(0,$kindStruct,"time.Time","Time","time",function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DH.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BM=$pkg.Month=$newType(4,$kindInt,"time.Month","Month","time",null);BO=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday","Weekday","time",null);BS=$pkg.Duration=$newType(8,$kindInt64,"time.Duration","Duration","time",null);CF=$pkg.Location=$newType(0,$kindStruct,"time.Location","Location","time",function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=CY.nil;this.tx=CZ.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DA.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CG=$pkg.zone=$newType(0,$kindStruct,"time.zone","zone","time",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_;});CH=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans","zoneTrans","time",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_;});CY=$sliceType(CG);CZ=$sliceType(CH);DA=$ptrType(CG);DB=$sliceType($String);DD=$arrayType($Uint8,20);DE=$sliceType($Uint8);DF=$arrayType($Uint8,9);DG=$arrayType($Uint8,64);DH=$ptrType(CF);DL=$arrayType($Uint8,32);DP=$ptrType(AF);DT=$ptrType(BL);G=function(){var $ptr;CA(new $Int64(0,0),new $Int64(0,0));};I=function(){var $ptr,i,j,k,l;i=new($global.Date)();j=$internalize(i,$String);k=B.IndexByte(j,40);l=B.IndexByte(j,41);if((k===-1)||(l===-1)){CJ.name="UTC";return;}CJ.name=j.substring((k+1>>0),l);CJ.zone=new CY([new CG.ptr(CJ.name,$imul(($parseInt(i.getTimezoneOffset())>>0),-60),false)]);};J=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};K=function(){var $ptr,i,j,k,l,m,n;i=new $Int64(0,0);j=0;k=J();l=$div64(k,new $Int64(0,1000000000),false);m=((n=$div64(k,new $Int64(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0);i=l;j=m;return[i,j];};S=function(i){var $ptr,i,j;if(i.length===0){return false;}j=i.charCodeAt(0);return 97<=j&&j<=122;};T=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,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,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j="";k=0;l="";m=0;while(true){if(!(m>0);o=n;if(o===74){if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="Jan"){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="January"){p=i.substring(0,m);q=257;r=i.substring((m+7>>0));j=p;k=q;l=r;return[j,k,l];}if(!S(i.substring((m+3>>0)))){s=i.substring(0,m);t=258;u=i.substring((m+3>>0));j=s;k=t;l=u;return[j,k,l];}}}else if(o===77){if(i.length>=(m+3>>0)){if(i.substring(m,(m+3>>0))==="Mon"){if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Monday"){v=i.substring(0,m);w=261;x=i.substring((m+6>>0));j=v;k=w;l=x;return[j,k,l];}if(!S(i.substring((m+3>>0)))){y=i.substring(0,m);z=262;aa=i.substring((m+3>>0));j=y;k=z;l=aa;return[j,k,l];}}if(i.substring(m,(m+3>>0))==="MST"){ab=i.substring(0,m);ac=21;ad=i.substring((m+3>>0));j=ab;k=ac;l=ad;return[j,k,l];}}}else if(o===48){if(i.length>=(m+2>>0)&&49<=i.charCodeAt((m+1>>0))&&i.charCodeAt((m+1>>0))<=54){ae=i.substring(0,m);af=(ag=i.charCodeAt((m+1>>0))-49<<24>>>24,((ag<0||ag>=R.length)?$throwRuntimeError("index out of range"):R[ag]));ah=i.substring((m+2>>0));j=ae;k=af;l=ah;return[j,k,l];}}else if(o===49){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===53)){ai=i.substring(0,m);aj=522;ak=i.substring((m+2>>0));j=ai;k=aj;l=ak;return[j,k,l];}al=i.substring(0,m);am=259;an=i.substring((m+1>>0));j=al;k=am;l=an;return[j,k,l];}else if(o===50){if(i.length>=(m+4>>0)&&i.substring(m,(m+4>>0))==="2006"){ao=i.substring(0,m);ap=273;aq=i.substring((m+4>>0));j=ao;k=ap;l=aq;return[j,k,l];}ar=i.substring(0,m);as=263;at=i.substring((m+1>>0));j=ar;k=as;l=at;return[j,k,l];}else if(o===95){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===50)){au=i.substring(0,m);av=264;aw=i.substring((m+2>>0));j=au;k=av;l=aw;return[j,k,l];}}else if(o===51){ax=i.substring(0,m);ay=523;az=i.substring((m+1>>0));j=ax;k=ay;l=az;return[j,k,l];}else if(o===52){ba=i.substring(0,m);bb=525;bc=i.substring((m+1>>0));j=ba;k=bb;l=bc;return[j,k,l];}else if(o===53){bd=i.substring(0,m);be=527;bf=i.substring((m+1>>0));j=bd;k=be;l=bf;return[j,k,l];}else if(o===80){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===77)){bg=i.substring(0,m);bh=531;bi=i.substring((m+2>>0));j=bg;k=bh;l=bi;return[j,k,l];}}else if(o===112){if(i.length>=(m+2>>0)&&(i.charCodeAt((m+1>>0))===109)){bj=i.substring(0,m);bk=532;bl=i.substring((m+2>>0));j=bj;k=bk;l=bl;return[j,k,l];}}else if(o===45){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="-070000"){bm=i.substring(0,m);bn=27;bo=i.substring((m+7>>0));j=bm;k=bn;l=bo;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="-07:00:00"){bp=i.substring(0,m);bq=30;br=i.substring((m+9>>0));j=bp;k=bq;l=br;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="-0700"){bs=i.substring(0,m);bt=26;bu=i.substring((m+5>>0));j=bs;k=bt;l=bu;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="-07:00"){bv=i.substring(0,m);bw=29;bx=i.substring((m+6>>0));j=bv;k=bw;l=bx;return[j,k,l];}if(i.length>=(m+3>>0)&&i.substring(m,(m+3>>0))==="-07"){by=i.substring(0,m);bz=28;ca=i.substring((m+3>>0));j=by;k=bz;l=ca;return[j,k,l];}}else if(o===90){if(i.length>=(m+7>>0)&&i.substring(m,(m+7>>0))==="Z070000"){cb=i.substring(0,m);cc=23;cd=i.substring((m+7>>0));j=cb;k=cc;l=cd;return[j,k,l];}if(i.length>=(m+9>>0)&&i.substring(m,(m+9>>0))==="Z07:00:00"){ce=i.substring(0,m);cf=25;cg=i.substring((m+9>>0));j=ce;k=cf;l=cg;return[j,k,l];}if(i.length>=(m+5>>0)&&i.substring(m,(m+5>>0))==="Z0700"){ch=i.substring(0,m);ci=22;cj=i.substring((m+5>>0));j=ch;k=ci;l=cj;return[j,k,l];}if(i.length>=(m+6>>0)&&i.substring(m,(m+6>>0))==="Z07:00"){ck=i.substring(0,m);cl=24;cm=i.substring((m+6>>0));j=ck;k=cl;l=cm;return[j,k,l];}}else if(o===46){if((m+1>>0)>0))===48)||(i.charCodeAt((m+1>>0))===57))){cn=i.charCodeAt((m+1>>0));co=m+1>>0;while(true){if(!(co>0;}if(!AH(i,co)){cp=31;if(i.charCodeAt((m+1>>0))===57){cp=32;}cp=cp|((((co-((m+1>>0))>>0))<<16>>0));cq=i.substring(0,m);cr=cp;cs=i.substring(co);j=cq;k=cr;l=cs;return[j,k,l];}}}m=m+(1)>>0;}ct=i;cu=0;cv="";j=ct;k=cu;l=cv;return[j,k,l];};Y=function(i,j){var $ptr,i,j,k,l,m;k=0;while(true){if(!(k>>0;m=(m|(32))>>>0;if(!((l===m))||l<97||l>122){return false;}}k=k+(1)>>0;}return true;};Z=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]);if(j.length>=n.length&&Y(j.substring(0,n.length),n)){return[m,j.substring(n.length),$ifaceNil];}l++;}return[-1,j,AE];};AA=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=(j>>>0);if(j<0){i=$append(i,45);l=(-j>>>0);}m=DD.zero();n=20;while(true){if(!(l>=10)){break;}n=n-(1)>>0;p=(o=l/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=(((48+l>>>0)-(p*10>>>0)>>>0)<<24>>>24));l=p;}n=n-(1)>>0;((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]=((48+l>>>0)<<24>>>24));q=20-n>>0;while(true){if(!(q>0;}return $appendSlice(i,$subslice(new DE(m),n));};AC=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=0;k=$ifaceNil;l=false;if(!(i==="")&&((i.charCodeAt(0)===45)||(i.charCodeAt(0)===43))){l=i.charCodeAt(0)===45;i=i.substring(1);}m=AS(i);n=m[0];o=m[1];k=m[2];j=((n.$low+((n.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(k,$ifaceNil))||!(o==="")){p=0;q=AB;j=p;k=q;return[j,k];}if(l){j=-j;}r=j;s=$ifaceNil;j=r;k=s;return[j,k];};AD=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r;m=j;n=DF.zero();o=9;while(true){if(!(o>0)){break;}o=o-(1)>>0;((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]=(((p=m%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));m=(q=m/(10),(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));}if(k>9){k=9;}if(l){while(true){if(!(k>0&&((r=k-1>>0,((r<0||r>=n.length)?$throwRuntimeError("index out of range"):n[r]))===48))){break;}k=k-(1)>>0;}if(k===0){return i;}}i=$append(i,46);return $appendSlice(i,$subslice(new DE(n),0,k));};BL.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.String=function(){return this.$val.String();};BL.ptr.prototype.Format=function(i){var $ptr,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;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:j=$clone(this,BL);k=DE.nil;l=i.length+10>>0;if(l<64){m=DG.zero();k=$subslice(new DE(m),0,0);}else{k=$makeSlice(DE,0,l);}n=j.AppendFormat(k,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}k=n;return $bytesToString(k);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Format};}$f.$ptr=$ptr;$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;};BL.prototype.Format=function(i){return this.$val.Format(i);};BL.ptr.prototype.AppendFormat=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,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;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:k=$clone(this,BL);m=k.locabs();$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];p=l[2];q=-1;r=0;s=0;t=-1;u=0;v=0;while(true){if(!(!(j===""))){break;}w=T(j);x=w[0];y=w[1];z=w[2];if(!(x==="")){i=$appendSlice(i,x);}if(y===0){break;}j=z;if(q<0&&!(((y&256)===0))){aa=BW(p,true);q=aa[0];r=aa[1];s=aa[2];}if(t<0&&!(((y&512)===0))){ab=BR(p);t=ab[0];u=ab[1];v=ab[2];}ac=y&65535;switch(0){default:if(ac===274){ad=q;if(ad<0){ad=-ad;}i=AA(i,(ae=ad%100,ae===ae?ae:$throwRuntimeError("integer divide by zero")),2);}else if(ac===273){i=AA(i,q,4);}else if(ac===258){i=$appendSlice(i,new BM(r).String().substring(0,3));}else if(ac===257){af=new BM(r).String();i=$appendSlice(i,af);}else if(ac===259){i=AA(i,(r>>0),0);}else if(ac===260){i=AA(i,(r>>0),2);}else if(ac===262){i=$appendSlice(i,new BO(BQ(p)).String().substring(0,3));}else if(ac===261){ag=new BO(BQ(p)).String();i=$appendSlice(i,ag);}else if(ac===263){i=AA(i,s,0);}else if(ac===264){if(s<10){i=$append(i,32);}i=AA(i,s,0);}else if(ac===265){i=AA(i,s,2);}else if(ac===522){i=AA(i,t,2);}else if(ac===523){ai=(ah=t%12,ah===ah?ah:$throwRuntimeError("integer divide by zero"));if(ai===0){ai=12;}i=AA(i,ai,0);}else if(ac===524){ak=(aj=t%12,aj===aj?aj:$throwRuntimeError("integer divide by zero"));if(ak===0){ak=12;}i=AA(i,ak,2);}else if(ac===525){i=AA(i,u,0);}else if(ac===526){i=AA(i,u,2);}else if(ac===527){i=AA(i,v,2);}else if(ac===528){i=AA(i,v,2);}else if(ac===531){if(t>=12){i=$appendSlice(i,"PM");}else{i=$appendSlice(i,"AM");}}else if(ac===532){if(t>=12){i=$appendSlice(i,"pm");}else{i=$appendSlice(i,"am");}}else if(ac===22||ac===24||ac===23||ac===25||ac===26||ac===29||ac===27||ac===30){if((o===0)&&((y===22)||(y===24)||(y===23)||(y===25))){i=$append(i,90);break;}am=(al=o/60,(al===al&&al!==1/0&&al!==-1/0)?al>>0:$throwRuntimeError("integer divide by zero"));an=o;if(am<0){i=$append(i,45);am=-am;an=-an;}else{i=$append(i,43);}i=AA(i,(ao=am/60,(ao===ao&&ao!==1/0&&ao!==-1/0)?ao>>0:$throwRuntimeError("integer divide by zero")),2);if((y===24)||(y===29)||(y===25)||(y===30)){i=$append(i,58);}i=AA(i,(ap=am%60,ap===ap?ap:$throwRuntimeError("integer divide by zero")),2);if((y===23)||(y===27)||(y===30)||(y===25)){if((y===30)||(y===25)){i=$append(i,58);}i=AA(i,(aq=an%60,aq===aq?aq:$throwRuntimeError("integer divide by zero")),2);}}else if(ac===21){if(!(n==="")){i=$appendSlice(i,n);break;}as=(ar=o/60,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));if(as<0){i=$append(i,45);as=-as;}else{i=$append(i,43);}i=AA(i,(at=as/60,(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero")),2);i=AA(i,(au=as%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}else if(ac===31||ac===32){i=AD(i,(k.Nanosecond()>>>0),y>>16>>0,(y&65535)===32);}}}return i;}return;}if($f===undefined){$f={$blk:BL.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.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.prototype.AppendFormat=function(i,j){return this.$val.AppendFormat(i,j);};AG=function(i){var $ptr,i;return"\""+i+"\"";};AF.ptr.prototype.Error=function(){var $ptr,i;i=this;if(i.Message===""){return"parsing time "+AG(i.Value)+" as "+AG(i.Layout)+": cannot parse "+AG(i.ValueElem)+" as "+AG(i.LayoutElem);}return"parsing time "+AG(i.Value)+i.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(i,j){var $ptr,i,j,k;if(i.length<=j){return false;}k=i.charCodeAt(j);return 48<=k&&k<=57;};AI=function(i,j){var $ptr,i,j;if(!AH(i,0)){return[0,i,AE];}if(!AH(i,1)){if(j){return[0,i,AE];}return[((i.charCodeAt(0)-48<<24>>>24)>>0),i.substring(1),$ifaceNil];}return[($imul(((i.charCodeAt(0)-48<<24>>>24)>>0),10))+((i.charCodeAt(1)-48<<24>>>24)>>0)>>0,i.substring(2),$ifaceNil];};AJ=function(i){var $ptr,i;while(true){if(!(i.length>0&&(i.charCodeAt(0)===32))){break;}i=i.substring(1);}return i;};AK=function(i,j){var $ptr,i,j;while(true){if(!(j.length>0)){break;}if(j.charCodeAt(0)===32){if(i.length>0&&!((i.charCodeAt(0)===32))){return[i,AE];}j=AJ(j);i=AJ(i);continue;}if((i.length===0)||!((i.charCodeAt(0)===j.charCodeAt(0)))){return[i,AE];}j=j.substring(1);i=i.substring(1);}return[i,$ifaceNil];};AL=function(i,j){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AN(i,j,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(i,j,k,l){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,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;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;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:m=i;n=j;o=m;p=n;q="";r=false;s=false;t=0;u=1;v=1;w=0;x=0;y=0;z=0;aa=DH.nil;ab=-1;ac="";while(true){ad=$ifaceNil;ae=T(i);af=ae[0];ag=ae[1];ah=ae[2];ai=i.substring(af.length,(i.length-ah.length>>0));aj=AK(j,af);j=aj[0];ad=aj[1];if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,af,j,"")];}if(ag===0){if(!((j.length===0))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,"",j,": extra text: "+j)];}break;}i=ah;ak="";al=ag&65535;switch(0){default:if(al===274){if(j.length<2){ad=AE;break;}am=j.substring(0,2);an=j.substring(2);ak=am;j=an;ao=AC(ak);t=ao[0];ad=ao[1];if(t>=69){t=t+(1900)>>0;}else{t=t+(2000)>>0;}}else if(al===273){if(j.length<4||!AH(j,0)){ad=AE;break;}ap=j.substring(0,4);aq=j.substring(4);ak=ap;j=aq;ar=AC(ak);t=ar[0];ad=ar[1];}else if(al===258){as=Z(W,j);u=as[0];j=as[1];ad=as[2];}else if(al===257){at=Z(X,j);u=at[0];j=at[1];ad=at[2];}else if(al===259||al===260){au=AI(j,ag===260);u=au[0];j=au[1];ad=au[2];if(u<=0||120&&(j.charCodeAt(0)===32)){j=j.substring(1);}ax=AI(j,ag===265);v=ax[0];j=ax[1];ad=ax[2];if(v<0||31=2&&(j.charCodeAt(0)===46)&&AH(j,1)){bc=T(i);ag=bc[1];ag=ag&(65535);if((ag===31)||(ag===32)){break;}bd=2;while(true){if(!(bd>0;}be=AQ(j,bd);z=be[0];q=be[1];ad=be[2];j=j.substring(bd);}}else if(al===531){if(j.length<2){ad=AE;break;}bf=j.substring(0,2);bg=j.substring(2);ak=bf;j=bg;bh=ak;if(bh==="PM"){s=true;}else if(bh==="AM"){r=true;}else{ad=AE;}}else if(al===532){if(j.length<2){ad=AE;break;}bi=j.substring(0,2);bj=j.substring(2);ak=bi;j=bj;bk=ak;if(bk==="pm"){s=true;}else if(bk==="am"){r=true;}else{ad=AE;}}else if(al===22||al===24||al===23||al===25||al===26||al===28||al===29||al===27||al===30){if(((ag===22)||(ag===24))&&j.length>=1&&(j.charCodeAt(0)===90)){j=j.substring(1);aa=$pkg.UTC;break;}bl="";bm="";bn="";bo="";bp=bl;bq=bm;br=bn;bs=bo;if((ag===24)||(ag===29)){if(j.length<6){ad=AE;break;}if(!((j.charCodeAt(3)===58))){ad=AE;break;}bt=j.substring(0,1);bu=j.substring(1,3);bv=j.substring(4,6);bw="00";bx=j.substring(6);bp=bt;bq=bu;br=bv;bs=bw;j=bx;}else if(ag===28){if(j.length<3){ad=AE;break;}by=j.substring(0,1);bz=j.substring(1,3);ca="00";cb="00";cc=j.substring(3);bp=by;bq=bz;br=ca;bs=cb;j=cc;}else if((ag===25)||(ag===30)){if(j.length<9){ad=AE;break;}if(!((j.charCodeAt(3)===58))||!((j.charCodeAt(6)===58))){ad=AE;break;}cd=j.substring(0,1);ce=j.substring(1,3);cf=j.substring(4,6);cg=j.substring(7,9);ch=j.substring(9);bp=cd;bq=ce;br=cf;bs=cg;j=ch;}else if((ag===23)||(ag===27)){if(j.length<7){ad=AE;break;}ci=j.substring(0,1);cj=j.substring(1,3);ck=j.substring(3,5);cl=j.substring(5,7);cm=j.substring(7);bp=ci;bq=cj;br=ck;bs=cl;j=cm;}else{if(j.length<5){ad=AE;break;}cn=j.substring(0,1);co=j.substring(1,3);cp=j.substring(3,5);cq="00";cr=j.substring(5);bp=cn;bq=co;br=cp;bs=cq;j=cr;}cs=0;ct=0;cu=0;cv=cs;cw=ct;cx=cu;cy=AC(bq);cv=cy[0];ad=cy[1];if($interfaceIsEqual(ad,$ifaceNil)){cz=AC(br);cw=cz[0];ad=cz[1];}if($interfaceIsEqual(ad,$ifaceNil)){da=AC(bs);cx=da[0];ad=da[1];}ab=($imul(((($imul(cv,60))+cw>>0)),60))+cx>>0;db=bp.charCodeAt(0);if(db===43){}else if(db===45){ab=-ab;}else{ad=AE;}}else if(al===21){if(j.length>=3&&j.substring(0,3)==="UTC"){aa=$pkg.UTC;j=j.substring(3);break;}dc=AO(j);dd=dc[0];de=dc[1];if(!de){ad=AE;break;}df=j.substring(0,dd);dg=j.substring(dd);ac=df;j=dg;}else if(al===31){dh=1+((ag>>16>>0))>>0;if(j.length>0)>0))&&j.charCodeAt((dj+1>>0))<=57)){break;}dj=dj+(1)>>0;}dk=AQ(j,1+dj>>0);z=dk[0];q=dk[1];ad=dk[2];j=j.substring((1+dj>>0));}}if(!(q==="")){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,": "+q+" out of range")];}if(!($interfaceIsEqual(ad,$ifaceNil))){return[new BL.ptr(new $Int64(0,0),0,DH.nil),new AF.ptr(o,p,ai,j,"")];}}if(s&&w<12){w=w+(12)>>0;}else if(r&&(w===12)){w=0;}if(!(aa===DH.nil)){$s=1;continue;}$s=2;continue;case 1:dl=CD(t,(u>>0),v,w,x,y,z,aa);$s=3;case 3:if($c){$c=false;dl=dl.$blk();}if(dl&&dl.$blk!==undefined){break s;}$s=4;case 4:return[dl,$ifaceNil];case 2:if(!((ab===-1))){$s=5;continue;}$s=6;continue;case 5:dm=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=7;case 7:if($c){$c=false;dm=dm.$blk();}if(dm&&dm.$blk!==undefined){break s;}dn=$clone(dm,BL);dn.sec=(dp=dn.sec,dq=new $Int64(0,ab),new $Int64(dp.$high-dq.$high,dp.$low-dq.$low));dt=l.lookup((ds=dn.sec,new $Int64(ds.$high+-15,ds.$low+2288912640)));$s=8;case 8:if($c){$c=false;dt=dt.$blk();}if(dt&&dt.$blk!==undefined){break s;}dr=dt;du=dr[0];dv=dr[1];if((dv===ab)&&(ac===""||du===ac)){dn.loc=l;return[dn,$ifaceNil];}dn.loc=CL(ac,ab);return[dn,$ifaceNil];case 6:if(!(ac==="")){$s=9;continue;}$s=10;continue;case 9:dw=CD(t,(u>>0),v,w,x,y,z,$pkg.UTC);$s=11;case 11:if($c){$c=false;dw=dw.$blk();}if(dw&&dw.$blk!==undefined){break s;}dx=$clone(dw,BL);ea=l.lookupName(ac,(dz=dx.sec,new $Int64(dz.$high+-15,dz.$low+2288912640)));$s=12;case 12:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}dy=ea;eb=dy[0];ec=dy[2];if(ec){dx.sec=(ed=dx.sec,ee=new $Int64(0,eb),new $Int64(ed.$high-ee.$high,ed.$low-ee.$low));dx.loc=l;return[dx,$ifaceNil];}if(ac.length>3&&ac.substring(0,3)==="GMT"){ef=AC(ac.substring(3));eb=ef[0];eb=$imul(eb,(3600));}dx.loc=CL(ac,eb);return[dx,$ifaceNil];case 10:eg=CD(t,(u>>0),v,w,x,y,z,k);$s=13;case 13:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}$s=14;case 14:return[eg,$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.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;};AO=function(i){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=0;k=false;if(i.length<3){l=0;m=false;j=l;k=m;return[j,k];}if(i.length>=4&&(i.substring(0,4)==="ChST"||i.substring(0,4)==="MeST")){n=4;o=true;j=n;k=o;return[j,k];}if(i.substring(0,3)==="GMT"){j=AP(i);p=j;q=true;j=p;k=q;return[j,k];}r=0;r=0;while(true){if(!(r<6)){break;}if(r>=i.length){break;}s=i.charCodeAt(r);if(s<65||90>0;}t=r;if(t===0||t===1||t===2||t===6){u=0;v=false;j=u;k=v;return[j,k];}else if(t===5){if(i.charCodeAt(4)===84){w=5;x=true;j=w;k=x;return[j,k];}}else if(t===4){if(i.charCodeAt(3)===84){y=4;z=true;j=y;k=z;return[j,k];}}else if(t===3){aa=3;ab=true;j=aa;k=ab;return[j,k];}ac=0;ad=false;j=ac;k=ad;return[j,k];};AP=function(i){var $ptr,i,j,k,l,m,n;i=i.substring(3);if(i.length===0){return 3;}j=i.charCodeAt(0);if(!((j===45))&&!((j===43))){return 3;}k=AS(i.substring(1));l=k[0];m=k[1];n=k[2];if(!($interfaceIsEqual(n,$ifaceNil))){return 3;}if(j===45){l=new $Int64(-l.$high,-l.$low);}if((l.$high===0&&l.$low===0)||(l.$high<-1||(l.$high===-1&&l.$low<4294967282))||(0>0)-m.length>>0;};AQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l="";m=$ifaceNil;if(!((i.charCodeAt(0)===46))){m=AE;return[k,l,m];}n=AC(i.substring(1,j));k=n[0];m=n[1];if(!($interfaceIsEqual(m,$ifaceNil))){return[k,l,m];}if(k<0||1000000000<=k){l="fractional second";return[k,l,m];}o=10-j>>0;p=0;while(true){if(!(p>0;}return[k,l,m];};AS=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=new $Int64(0,0);k="";l=$ifaceNil;m=0;while(true){if(!(m57){break;}if((j.$high>214748364||(j.$high===214748364&&j.$low>3435973836))){o=new $Int64(0,0);p="";q=AR;j=o;k=p;l=q;return[j,k,l];}j=(r=(s=$mul64(j,new $Int64(0,10)),t=new $Int64(0,n),new $Int64(s.$high+t.$high,s.$low+t.$low)),new $Int64(r.$high-0,r.$low-48));if((j.$high<0||(j.$high===0&&j.$low<0))){u=new $Int64(0,0);v="";w=AR;j=u;k=v;l=w;return[j,k,l];}m=m+(1)>>0;}x=j;y=i.substring(m);z=$ifaceNil;j=x;k=y;l=z;return[j,k,l];};BL.ptr.prototype.After=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))||(m=j.sec,n=i.sec,(m.$high===n.$high&&m.$low===n.$low))&&j.nsec>i.nsec;};BL.prototype.After=function(i){return this.$val.After(i);};BL.ptr.prototype.Before=function(i){var $ptr,i,j,k,l,m,n;i=$clone(i,BL);j=$clone(this,BL);return(k=j.sec,l=i.sec,(k.$high>0,((j<0||j>=BN.length)?$throwRuntimeError("index out of range"):BN[j]));};$ptrType(BM).prototype.String=function(){return new BM(this.$get()).String();};BO.prototype.String=function(){var $ptr,i;i=this.$val;return((i<0||i>=BP.length)?$throwRuntimeError("index out of range"):BP[i]);};$ptrType(BO).prototype.String=function(){return new BO(this.$get()).String();};BL.ptr.prototype.IsZero=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,(j.$high===0&&j.$low===0))&&(i.nsec===0);};BL.prototype.IsZero=function(){return this.$val.IsZero();};BL.ptr.prototype.abs=function(){var $ptr,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;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:i=$clone(this,BL);j=i.loc;if(j===DH.nil||j===CJ){$s=1;continue;}$s=2;continue;case 1:k=j.get();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;case 2:m=(l=i.sec,new $Int64(l.$high+-15,l.$low+2288912640));if(!(j===CI)){$s=4;continue;}$s=5;continue;case 4:if(!(j.cacheZone===DA.nil)&&(n=j.cacheStart,(n.$high>0)/86400,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0);};BL.ptr.prototype.ISOWeek=function(){var $ptr,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;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:i=0;j=0;k=$clone(this,BL);m=k.date(true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];n=l[1];o=l[2];p=l[3];r=k.Weekday();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=(q=((r+6>>0)>>0)%7,q===q?q:$throwRuntimeError("integer divide by zero"));j=(t=(((p-s>>0)+7>>0))/7,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));v=(u=(((s-p>>0)+371>>0))%7,u===u?u:$throwRuntimeError("integer divide by zero"));if(1<=v&&v<=3){j=j+(1)>>0;}if(j===0){i=i-(1)>>0;j=52;if((v===4)||((v===5)&&CB(i))){j=j+(1)>>0;}}if((n===12)&&o>=29&&s<3){x=(w=(((s+31>>0)-o>>0))%7,w===w?w:$throwRuntimeError("integer divide by zero"));if(0<=x&&x<=2){i=i+(1)>>0;j=1;}}return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.ISOWeek};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BL.ptr.prototype.Clock=function(){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:i=0;j=0;k=0;l=$clone(this,BL);n=l.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;}m=o;i=m[0];j=m[1];k=m[2];$s=3;case 3:return[i,j,k];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Clock};}$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;};BL.prototype.Clock=function(){return this.$val.Clock();};BR=function(i){var $ptr,i,j,k,l,m,n;j=0;k=0;l=0;l=($div64(i,new $Uint64(0,86400),true).$low>>0);j=(m=l/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(j,3600)))>>0;k=(n=l/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));l=l-(($imul(k,60)))>>0;return[j,k,l];};BL.ptr.prototype.Hour=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,86400),true).$low>>0)/3600,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Hour=function(){return this.$val.Hour();};BL.ptr.prototype.Minute=function(){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);k=i.abs();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return(j=($div64(k,new $Uint64(0,3600),true).$low>>0)/60,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Minute=function(){return this.$val.Minute();};BL.ptr.prototype.Second=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.abs();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return($div64(j,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Second};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.Second=function(){return this.$val.Second();};BL.ptr.prototype.Nanosecond=function(){var $ptr,i;i=$clone(this,BL);return(i.nsec>>0);};BL.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BL.ptr.prototype.YearDay=function(){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:i=$clone(this,BL);k=i.date(false);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[3];return l+1>>0;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.YearDay=function(){return this.$val.YearDay();};BS.prototype.String=function(){var $ptr,i,j,k,l,m,n,o,p;i=this;j=DL.zero();k=32;l=new $Uint64(i.$high,i.$low);m=(i.$high<0||(i.$high===0&&i.$low<0));if(m){l=new $Uint64(-l.$high,-l.$low);}if((l.$high<0||(l.$high===0&&l.$low<1000000000))){n=0;k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);k=k-(1)>>0;if((l.$high===0&&l.$low===0)){return"0";}else if((l.$high<0||(l.$high===0&&l.$low<1000))){n=0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=110);}else if((l.$high<0||(l.$high===0&&l.$low<1000000))){n=3;k=k-(1)>>0;$copyString($subslice(new DE(j),k),"\xC2\xB5");}else{n=6;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);}o=BT($subslice(new DE(j),0,k),l,n);k=o[0];l=o[1];k=BU($subslice(new DE(j),0,k),l);}else{k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=115);p=BT($subslice(new DE(j),0,k),l,9);k=p[0];l=p[1];k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=109);k=BU($subslice(new DE(j),0,k),$div64(l,new $Uint64(0,60),true));l=$div64(l,(new $Uint64(0,60)),false);if((l.$high>0||(l.$high===0&&l.$low>0))){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=104);k=BU($subslice(new DE(j),0,k),l);}}}if(m){k=k-(1)>>0;((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=45);}return $bytesToString($subslice(new DE(j),k));};$ptrType(BS).prototype.String=function(){return this.$get().String();};BT=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=new $Uint64(0,0);n=i.$length;o=false;p=0;while(true){if(!(p>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=((q.$low<<24>>>24)+48<<24>>>24));}j=$div64(j,(new $Uint64(0,10)),false);p=p+(1)>>0;}if(o){n=n-(1)>>0;((n<0||n>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+n]=46);}r=n;s=j;l=r;m=s;return[l,m];};BU=function(i,j){var $ptr,i,j,k;k=i.$length;if((j.$high===0&&j.$low===0)){k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=48);}else{while(true){if(!((j.$high>0||(j.$high===0&&j.$low>0)))){break;}k=k-(1)>>0;((k<0||k>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+k]=(($div64(j,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));j=$div64(j,(new $Uint64(0,10)),false);}}return k;};BS.prototype.Nanoseconds=function(){var $ptr,i;i=this;return new $Int64(i.$high,i.$low);};$ptrType(BS).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BS.prototype.Seconds=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(0,1000000000),false);k=$div64(i,new BS(0,1000000000),true);return $flatten64(j)+$flatten64(k)*1e-09;};$ptrType(BS).prototype.Seconds=function(){return this.$get().Seconds();};BS.prototype.Minutes=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(13,4165425152),false);k=$div64(i,new BS(13,4165425152),true);return $flatten64(j)+$flatten64(k)*1.6666666666666667e-11;};$ptrType(BS).prototype.Minutes=function(){return this.$get().Minutes();};BS.prototype.Hours=function(){var $ptr,i,j,k;i=this;j=$div64(i,new BS(838,817405952),false);k=$div64(i,new BS(838,817405952),true);return $flatten64(j)+$flatten64(k)*2.777777777777778e-13;};$ptrType(BS).prototype.Hours=function(){return this.$get().Hours();};BL.ptr.prototype.Add=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s;j=$clone(this,BL);j.sec=(k=j.sec,l=(m=$div64(i,new BS(0,1000000000),false),new $Int64(m.$high,m.$low)),new $Int64(k.$high+l.$high,k.$low+l.$low));o=j.nsec+((n=$div64(i,new BS(0,1000000000),true),n.$low+((n.$high>>31)*4294967296))>>0)>>0;if(o>=1000000000){j.sec=(p=j.sec,q=new $Int64(0,1),new $Int64(p.$high+q.$high,p.$low+q.$low));o=o-(1000000000)>>0;}else if(o<0){j.sec=(r=j.sec,s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));o=o+(1000000000)>>0;}j.nsec=o;return j;};BL.prototype.Add=function(i){return this.$val.Add(i);};BL.ptr.prototype.Sub=function(i){var $ptr,i,j,k,l,m,n,o,p;i=$clone(i,BL);j=$clone(this,BL);p=(k=$mul64((l=(m=j.sec,n=i.sec,new $Int64(m.$high-n.$high,m.$low-n.$low)),new BS(l.$high,l.$low)),new BS(0,1000000000)),o=new BS(0,(j.nsec-i.nsec>>0)),new BS(k.$high+o.$high,k.$low+o.$low));if(i.Add(p).Equal(j)){return p;}else if(j.Before(i)){return new BS(-2147483648,0);}else{return new BS(2147483647,4294967295);}};BL.prototype.Sub=function(i){return this.$val.Sub(i);};BL.ptr.prototype.AddDate=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=$clone(this,BL);n=l.Date();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];q=m[2];s=l.Clock();$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];v=r[2];w=CD(o+i>>0,p+(j>>0)>>0,q+k>>0,t,u,v,(l.nsec>>0),l.loc);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=4;case 4:return w;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.AddDate};}$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.$s=$s;$f.$r=$r;return $f;};BL.prototype.AddDate=function(i,j,k){return this.$val.AddDate(i,j,k);};BL.ptr.prototype.date=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=0;k=0;l=0;m=0;n=$clone(this,BL);p=n.abs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=BW(p,i);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;j=o[0];k=o[1];l=o[2];m=o[3];$s=3;case 3:return[j,k,l,m];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.date};}$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;};BL.prototype.date=function(i){return this.$val.date(i);};BW=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=0;l=0;m=0;n=0;o=$div64(i,new $Uint64(0,86400),false);p=$div64(o,new $Uint64(0,146097),false);q=$mul64(new $Uint64(0,400),p);o=(r=$mul64(new $Uint64(0,146097),p),new $Uint64(o.$high-r.$high,o.$low-r.$low));p=$div64(o,new $Uint64(0,36524),false);p=(s=$shiftRightUint64(p,2),new $Uint64(p.$high-s.$high,p.$low-s.$low));q=(t=$mul64(new $Uint64(0,100),p),new $Uint64(q.$high+t.$high,q.$low+t.$low));o=(u=$mul64(new $Uint64(0,36524),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));p=$div64(o,new $Uint64(0,1461),false);q=(v=$mul64(new $Uint64(0,4),p),new $Uint64(q.$high+v.$high,q.$low+v.$low));o=(w=$mul64(new $Uint64(0,1461),p),new $Uint64(o.$high-w.$high,o.$low-w.$low));p=$div64(o,new $Uint64(0,365),false);p=(x=$shiftRightUint64(p,2),new $Uint64(p.$high-x.$high,p.$low-x.$low));q=(y=p,new $Uint64(q.$high+y.$high,q.$low+y.$low));o=(z=$mul64(new $Uint64(0,365),p),new $Uint64(o.$high-z.$high,o.$low-z.$low));k=((aa=(ab=new $Int64(q.$high,q.$low),new $Int64(ab.$high+-69,ab.$low+4075721025)),aa.$low+((aa.$high>>31)*4294967296))>>0);n=(o.$low>>0);if(!j){return[k,l,m,n];}m=n;if(CB(k)){if(m>59){m=m-(1)>>0;}else if(m===59){l=2;m=29;return[k,l,m,n];}}l=((ac=m/31,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0);ae=((ad=l+1>>0,((ad<0||ad>=BX.length)?$throwRuntimeError("index out of range"):BX[ad]))>>0);af=0;if(m>=ae){l=l+(1)>>0;af=ae;}else{af=(((l<0||l>=BX.length)?$throwRuntimeError("index out of range"):BX[l])>>0);}l=l+(1)>>0;m=(m-af>>0)+1>>0;return[k,l,m,n];};BZ=function(){var $ptr,i,j,k;i=K();j=i[0];k=i[1];return new BL.ptr(new $Int64(j.$high+14,j.$low+2006054656),k,$pkg.Local);};$pkg.Now=BZ;BL.ptr.prototype.UTC=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.UTC;return i;};BL.prototype.UTC=function(){return this.$val.UTC();};BL.ptr.prototype.Local=function(){var $ptr,i;i=$clone(this,BL);i.loc=$pkg.Local;return i;};BL.prototype.Local=function(){return this.$val.Local();};BL.ptr.prototype.In=function(i){var $ptr,i,j;j=$clone(this,BL);if(i===DH.nil){$panic(new $String("time: missing Location in call to Time.In"));}j.loc=i;return j;};BL.prototype.In=function(i){return this.$val.In(i);};BL.ptr.prototype.Location=function(){var $ptr,i,j;i=$clone(this,BL);j=i.loc;if(j===DH.nil){j=$pkg.UTC;}return j;};BL.prototype.Location=function(){return this.$val.Location();};BL.ptr.prototype.Zone=function(){var $ptr,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;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:i="";j=0;k=$clone(this,BL);n=k.loc.lookup((m=k.sec,new $Int64(m.$high+-15,m.$low+2288912640)));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;i=l[0];j=l[1];return[i,j];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.Zone};}$f.$ptr=$ptr;$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;};BL.prototype.Zone=function(){return this.$val.Zone();};BL.ptr.prototype.Unix=function(){var $ptr,i,j;i=$clone(this,BL);return(j=i.sec,new $Int64(j.$high+-15,j.$low+2288912640));};BL.prototype.Unix=function(){return this.$val.Unix();};BL.ptr.prototype.UnixNano=function(){var $ptr,i,j,k,l;i=$clone(this,BL);return(j=$mul64(((k=i.sec,new $Int64(k.$high+-15,k.$low+2288912640))),new $Int64(0,1000000000)),l=new $Int64(0,i.nsec),new $Int64(j.$high+l.$high,j.$low+l.$low));};BL.prototype.UnixNano=function(){return this.$val.UnixNano();};BL.ptr.prototype.MarshalBinary=function(){var $ptr,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;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:i=$clone(this,BL);j=0;if(i.Location()===CI){$s=1;continue;}$s=2;continue;case 1:j=-1;$s=3;continue;case 2:l=i.Zone();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];if(!(((n=m%60,n===n?n:$throwRuntimeError("integer divide by zero"))===0))){return[DE.nil,D.New("Time.MarshalBinary: zone offset has fractional minute")];}m=(o=m/(60),(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"));if(m<-32768||(m===-1)||m>32767){return[DE.nil,D.New("Time.MarshalBinary: unexpected zone offset")];}j=(m<<16>>16);case 3:p=new DE([1,($shiftRightInt64(i.sec,56).$low<<24>>>24),($shiftRightInt64(i.sec,48).$low<<24>>>24),($shiftRightInt64(i.sec,40).$low<<24>>>24),($shiftRightInt64(i.sec,32).$low<<24>>>24),($shiftRightInt64(i.sec,24).$low<<24>>>24),($shiftRightInt64(i.sec,16).$low<<24>>>24),($shiftRightInt64(i.sec,8).$low<<24>>>24),(i.sec.$low<<24>>>24),((i.nsec>>24>>0)<<24>>>24),((i.nsec>>16>>0)<<24>>>24),((i.nsec>>8>>0)<<24>>>24),(i.nsec<<24>>>24),((j>>8<<16>>16)<<24>>>24),(j<<24>>>24)]);return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalBinary};}$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.$r=$r;return $f;};BL.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BL.ptr.prototype.UnmarshalBinary=function(i){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,$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;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=i;if(k.$length===0){return D.New("Time.UnmarshalBinary: no data");}if(!(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])===1))){return D.New("Time.UnmarshalBinary: unsupported version");}if(!((k.$length===15))){return D.New("Time.UnmarshalBinary: invalid length");}k=$subslice(k,1);j.sec=(l=(m=(n=(o=(p=(q=(r=new $Int64(0,(7>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+7])),s=$shiftLeft64(new $Int64(0,(6>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+6])),8),new $Int64(r.$high|s.$high,(r.$low|s.$low)>>>0)),t=$shiftLeft64(new $Int64(0,(5>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+5])),16),new $Int64(q.$high|t.$high,(q.$low|t.$low)>>>0)),u=$shiftLeft64(new $Int64(0,(4>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+4])),24),new $Int64(p.$high|u.$high,(p.$low|u.$low)>>>0)),v=$shiftLeft64(new $Int64(0,(3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])),32),new $Int64(o.$high|v.$high,(o.$low|v.$low)>>>0)),w=$shiftLeft64(new $Int64(0,(2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])),40),new $Int64(n.$high|w.$high,(n.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])),48),new $Int64(m.$high|x.$high,(m.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])),56),new $Int64(l.$high|y.$high,(l.$low|y.$low)>>>0));k=$subslice(k,8);j.nsec=((((3>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+3])>>0)|(((2>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+2])>>0)<<8>>0))|(((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])>>0)<<16>>0))|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])>>0)<<24>>0);k=$subslice(k,4);z=$imul(((((1>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+1])<<16>>16)|(((0>=k.$length?$throwRuntimeError("index out of range"):k.$array[k.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(z===-60){$s=1;continue;}$s=2;continue;case 1:j.loc=CI;$s=3;continue;case 2:ac=$pkg.Local.lookup((ab=j.sec,new $Int64(ab.$high+-15,ab.$low+2288912640)));$s=4;case 4:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;ad=aa[1];if(z===ad){$s=5;continue;}$s=6;continue;case 5:j.loc=$pkg.Local;$s=7;continue;case 6:j.loc=CL("",z);case 7:case 3:return $ifaceNil;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalBinary};}$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.$r=$r;return $f;};BL.prototype.UnmarshalBinary=function(i){return this.$val.UnmarshalBinary(i);};BL.ptr.prototype.GobEncode=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=$clone(this,BL);j=i.MarshalBinary();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobEncode=function(){return this.$val.GobEncode();};BL.ptr.prototype.GobDecode=function(i){var $ptr,i,j,k,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this;k=j.UnmarshalBinary(i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=2;case 2:return k;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.GobDecode=function(i){return this.$val.GobDecode(i);};BL.ptr.prototype.MarshalJSON=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalJSON: year outside of range [0,9999]")];case 3:l=i.Format("\"2006-01-02T15:04:05.999999999Z07:00\"");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BL.ptr.prototype.UnmarshalJSON=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalJSON=function(i){return this.$val.UnmarshalJSON(i);};BL.ptr.prototype.MarshalText=function(){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:i=$clone(this,BL);j=i.Year();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(k<0||k>=10000){$s=2;continue;}$s=3;continue;case 2:return[DE.nil,D.New("Time.MarshalText: year outside of range [0,9999]")];case 3:l=i.Format("2006-01-02T15:04:05.999999999Z07:00");$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=5;case 5:return[new DE($stringToBytes(l)),$ifaceNil];}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.MarshalText=function(){return this.$val.MarshalText();};BL.ptr.prototype.UnmarshalText=function(i){var $ptr,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;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:j=$ifaceNil;k=this;m=AL("2006-01-02T15:04:05Z07:00",$bytesToString(i));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;BL.copy(k,l[0]);j=l[1];return j;}return;}if($f===undefined){$f={$blk:BL.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};BL.prototype.UnmarshalText=function(i){return this.$val.UnmarshalText(i);};CA=function(i,j){var $ptr,i,j,k,l,m,n,o;if((j.$high<0||(j.$high===0&&j.$low<0))||(j.$high>0||(j.$high===0&&j.$low>=1000000000))){k=$div64(j,new $Int64(0,1000000000),false);i=(l=k,new $Int64(i.$high+l.$high,i.$low+l.$low));j=(m=$mul64(k,new $Int64(0,1000000000)),new $Int64(j.$high-m.$high,j.$low-m.$low));if((j.$high<0||(j.$high===0&&j.$low<0))){j=(n=new $Int64(0,1000000000),new $Int64(j.$high+n.$high,j.$low+n.$low));i=(o=new $Int64(0,1),new $Int64(i.$high-o.$high,i.$low-o.$low));}}return new BL.ptr(new $Int64(i.$high+14,i.$low+2006054656),((j.$low+((j.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CA;CB=function(i){var $ptr,i,j,k,l;return((j=i%4,j===j?j:$throwRuntimeError("integer divide by zero"))===0)&&(!(((k=i%100,k===k?k:$throwRuntimeError("integer divide by zero"))===0))||((l=i%400,l===l?l:$throwRuntimeError("integer divide by zero"))===0));};CC=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=0;if(j<0){o=(n=((-j-1>>0))/k,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))+1>>0;i=i-(o)>>0;j=j+(($imul(o,k)))>>0;}if(j>=k){q=(p=j/k,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));i=i+(q)>>0;j=j-(($imul(q,k)))>>0;}r=i;s=j;l=r;m=s;return[l,m];};CD=function(i,j,k,l,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,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;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(p===DH.nil){$panic(new $String("time: missing Location in call to Date"));}q=(j>>0)-1>>0;r=CC(i,q,12);i=r[0];q=r[1];j=(q>>0)+1>>0;s=CC(n,o,1000000000);n=s[0];o=s[1];t=CC(m,n,60);m=t[0];n=t[1];u=CC(l,m,60);l=u[0];m=u[1];v=CC(k,l,24);k=v[0];l=v[1];y=(w=(x=new $Int64(0,i),new $Int64(x.$high- -69,x.$low-4075721025)),new $Uint64(w.$high,w.$low));z=$div64(y,new $Uint64(0,400),false);y=(aa=$mul64(new $Uint64(0,400),z),new $Uint64(y.$high-aa.$high,y.$low-aa.$low));ab=$mul64(new $Uint64(0,146097),z);z=$div64(y,new $Uint64(0,100),false);y=(ac=$mul64(new $Uint64(0,100),z),new $Uint64(y.$high-ac.$high,y.$low-ac.$low));ab=(ad=$mul64(new $Uint64(0,36524),z),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));z=$div64(y,new $Uint64(0,4),false);y=(ae=$mul64(new $Uint64(0,4),z),new $Uint64(y.$high-ae.$high,y.$low-ae.$low));ab=(af=$mul64(new $Uint64(0,1461),z),new $Uint64(ab.$high+af.$high,ab.$low+af.$low));z=y;ab=(ag=$mul64(new $Uint64(0,365),z),new $Uint64(ab.$high+ag.$high,ab.$low+ag.$low));ab=(ah=new $Uint64(0,(ai=j-1>>0,((ai<0||ai>=BX.length)?$throwRuntimeError("index out of range"):BX[ai]))),new $Uint64(ab.$high+ah.$high,ab.$low+ah.$low));if(CB(i)&&j>=3){ab=(aj=new $Uint64(0,1),new $Uint64(ab.$high+aj.$high,ab.$low+aj.$low));}ab=(ak=new $Uint64(0,(k-1>>0)),new $Uint64(ab.$high+ak.$high,ab.$low+ak.$low));al=$mul64(ab,new $Uint64(0,86400));al=(am=new $Uint64(0,((($imul(l,3600))+($imul(m,60))>>0)+n>>0)),new $Uint64(al.$high+am.$high,al.$low+am.$low));ao=(an=new $Int64(al.$high,al.$low),new $Int64(an.$high+-2147483647,an.$low+3844486912));aq=p.lookup(ao);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[1];as=ap[3];at=ap[4];if(!((ar===0))){$s=2;continue;}$s=3;continue;case 2:av=(au=new $Int64(0,ar),new $Int64(ao.$high-au.$high,ao.$low-au.$low));if((av.$highat.$high||(av.$high===at.$high&&av.$low>=at.$low))){$s=5;continue;}$s=6;continue;case 4:ax=p.lookup(new $Int64(as.$high-0,as.$low-1));$s=7;case 7:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ar=aw[1];$s=6;continue;case 5:az=p.lookup(at);$s=8;case 8:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;ar=ay[1];case 6:ao=(ba=new $Int64(0,ar),new $Int64(ao.$high-ba.$high,ao.$low-ba.$low));case 3:return new BL.ptr(new $Int64(ao.$high+14,ao.$low+2006054656),(o>>0),p);}return;}if($f===undefined){$f={$blk:CD};}$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.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.Date=CD;BL.ptr.prototype.Truncate=function(i){var $ptr,i,j,k,l;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];return j.Add(new BS(-l.$high,-l.$low));};BL.prototype.Truncate=function(i){return this.$val.Truncate(i);};BL.ptr.prototype.Round=function(i){var $ptr,i,j,k,l,m;j=$clone(this,BL);if((i.$high<0||(i.$high===0&&i.$low<=0))){return j;}k=CE(j,i);l=k[1];if((m=new BS(l.$high+l.$high,l.$low+l.$low),(m.$high>0;i.sec=(q=i.sec,r=new $Int64(0,1),new $Int64(q.$high-r.$high,q.$low-r.$low));}}if((j.$high<0||(j.$high===0&&j.$low<1000000000))&&(s=$div64(new BS(0,1000000000),(new BS(j.$high+j.$high,j.$low+j.$low)),true),(s.$high===0&&s.$low===0))){k=((u=n/((j.$low+((j.$high>>31)*4294967296))>>0),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;l=new BS(0,(v=n%((j.$low+((j.$high>>31)*4294967296))>>0),v===v?v:$throwRuntimeError("integer divide by zero")));}else if((t=$div64(j,new BS(0,1000000000),true),(t.$high===0&&t.$low===0))){x=(w=$div64(j,new BS(0,1000000000),false),new $Int64(w.$high,w.$low));k=((y=$div64(i.sec,x,false),y.$low+((y.$high>>31)*4294967296))>>0)&1;l=(z=$mul64((aa=$div64(i.sec,x,true),new BS(aa.$high,aa.$low)),new BS(0,1000000000)),ab=new BS(0,n),new BS(z.$high+ab.$high,z.$low+ab.$low));}else{ad=(ac=i.sec,new $Uint64(ac.$high,ac.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64(new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$highap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){k=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=new $Uint64(j.$high,j.$low),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}l=new BS(ag.$high,ag.$low);}if(m&&!((l.$high===0&&l.$low===0))){k=(k^(1))>>0;l=new BS(j.$high-l.$high,j.$low-l.$low);}return[k,l];};CF.ptr.prototype.get=function(){var $ptr,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;if(i===DH.nil){return CI;}if(i===CJ){$s=1;continue;}$s=2;continue;case 1:$r=CK.Do(I);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:return i;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.get};}$f.$ptr=$ptr;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.get=function(){return this.$val.get();};CF.ptr.prototype.String=function(){var $ptr,i,j,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:i=this;j=i.get();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=2;case 2:return j.name;}return;}if($f===undefined){$f={$blk:CF.ptr.prototype.String};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};CF.prototype.String=function(){return this.$val.String();};CL=function(i,j){var $ptr,i,j,k,l;k=new CF.ptr(i,new CY([new CG.ptr(i,j,false)]),new CZ([new CH.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DA.nil);k.cacheZone=(l=k.zone,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0]));return k;};$pkg.FixedZone=CL;CF.ptr.prototype.lookup=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,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;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:j="";k=0;l=false;m=new $Int64(0,0);n=new $Int64(0,0);o=this;p=o.get();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;if(o.zone.$length===0){j="UTC";k=0;l=false;m=new $Int64(-2147483648,0);n=new $Int64(2147483647,4294967295);return[j,k,l,m,n];}q=o.cacheZone;if(!(q===DA.nil)&&(r=o.cacheStart,(r.$high=u.$length?$throwRuntimeError("index out of range"):u.$array[u.$offset+0])).when,(i.$high=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]));j=x.name;k=x.offset;l=x.isDST;m=new $Int64(-2147483648,0);if(o.tx.$length>0){n=(y=o.tx,(0>=y.$length?$throwRuntimeError("index out of range"):y.$array[y.$offset+0])).when;}else{n=new $Int64(2147483647,4294967295);}return[j,k,l,m,n];}z=o.tx;n=new $Int64(2147483647,4294967295);aa=0;ab=z.$length;while(true){if(!((ab-aa>>0)>1)){break;}ad=aa+(ac=((ab-aa>>0))/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;ae=((ad<0||ad>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+ad]).when;if((i.$high=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).index,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]));j=ah.name;k=ah.offset;l=ah.isDST;m=((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]).when;return[j,k,l,m,n];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookup=function(i){return this.$val.lookup(i);};CF.ptr.prototype.lookupFirstZone=function(){var $ptr,i,j,k,l,m,n,o,p,q,r,s;i=this;if(!i.firstZoneUsed()){return 0;}if(i.tx.$length>0&&(j=i.zone,k=(l=i.tx,(0>=l.$length?$throwRuntimeError("index out of range"):l.$array[l.$offset+0])).index,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])).isDST){n=((m=i.tx,(0>=m.$length?$throwRuntimeError("index out of range"):m.$array[m.$offset+0])).index>>0)-1>>0;while(true){if(!(n>=0)){break;}if(!(o=i.zone,((n<0||n>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+n])).isDST){return n;}n=n-(1)>>0;}}p=i.zone;q=0;while(true){if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r])).isDST){return r;}q++;}return 0;};CF.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CF.ptr.prototype.firstZoneUsed=function(){var $ptr,i,j,k,l;i=this;j=i.tx;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]),CH);if(l.index===0){return true;}k++;}return false;};CF.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CF.ptr.prototype.lookupName=function(i,j){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,$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;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:k=0;l=false;m=false;n=this;o=n.get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n.zone;q=0;case 2:if(!(q=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+r]));if(t.name===i){$s=4;continue;}$s=5;continue;case 4:w=n.lookup((v=new $Int64(0,t.offset),new $Int64(j.$high-v.$high,j.$low-v.$low)));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;x=u[0];y=u[1];z=u[2];if(x===t.name){aa=y;ab=z;ac=true;k=aa;l=ab;m=ac;return[k,l,m];}case 5:q++;$s=2;continue;case 3:ad=n.zone;ae=0;while(true){if(!(ae=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+af]));if(ah.name===i){ai=ah.offset;aj=ah.isDST;ak=true;k=ai;l=aj;m=ak;return[k,l,m];}ae++;}return[k,l,m];}return;}if($f===undefined){$f={$blk:CF.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.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;};CF.prototype.lookupName=function(i,j){return this.$val.lookupName(i,j);};DP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BL.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([DE,$String],[DE],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BL],[$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,BM,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BM],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BO],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([BS],[BL],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BL],[BS],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BL],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BM,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BL],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BL],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DH],[BL],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DH],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([],[DE,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DE,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BS],[BL],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BS],[BL],false)}];DT.methods=[{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DE],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DE],[$error],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BO.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BS.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)}];DH.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DH],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",pkg:"",typ:$String,tag:""},{prop:"Value",name:"Value",pkg:"",typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",pkg:"",typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",pkg:"",typ:$String,tag:""},{prop:"Message",name:"Message",pkg:"",typ:$String,tag:""}]);BL.init([{prop:"sec",name:"sec",pkg:"time",typ:$Int64,tag:""},{prop:"nsec",name:"nsec",pkg:"time",typ:$Int32,tag:""},{prop:"loc",name:"loc",pkg:"time",typ:DH,tag:""}]);CF.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"zone",name:"zone",pkg:"time",typ:CY,tag:""},{prop:"tx",name:"tx",pkg:"time",typ:CZ,tag:""},{prop:"cacheStart",name:"cacheStart",pkg:"time",typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",pkg:"time",typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",pkg:"time",typ:DA,tag:""}]);CG.init([{prop:"name",name:"name",pkg:"time",typ:$String,tag:""},{prop:"offset",name:"offset",pkg:"time",typ:$Int,tag:""},{prop:"isDST",name:"isDST",pkg:"time",typ:$Bool,tag:""}]);CH.init([{prop:"when",name:"when",pkg:"time",typ:$Int64,tag:""},{prop:"index",name:"index",pkg:"time",typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",pkg:"time",typ:$Bool,tag:""},{prop:"isutc",name:"isutc",pkg:"time",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=D.$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=A.$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;}CJ=new CF.ptr("",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);CK=new F.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DB(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DB(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DB(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DB(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=D.New("time: invalid number");AE=D.New("bad value for field");AR=D.New("time: bad [0-9]*");BN=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BP=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);BX=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CI=new CF.ptr("UTC",CY.nil,CZ.nil,new $Int64(0,0),new $Int64(0,0),DA.nil);$pkg.UTC=CI;$pkg.Local=CJ;h=E.Getenv("ZONEINFO");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;CM=g[0];CQ=D.New("malformed time zone information");G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["os"]=(function(){var $pkg={},$init,E,A,B,F,H,G,C,D,Z,AA,AS,BI,BJ,BL,CW,CX,CZ,DB,DC,DD,DF,DG,DH,DI,DP,DU,DV,DW,DX,EB,ED,EE,EF,AQ,AX,BX,CT,I,J,K,AB,AD,AG,AZ,BA,BC,BK,BM,BP,BS,BZ,CA,CF,CL,CN,CO,CU;E=$packages["errors"];A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["io"];F=$packages["runtime"];H=$packages["sync"];G=$packages["sync/atomic"];C=$packages["syscall"];D=$packages["time"];Z=$pkg.PathError=$newType(0,$kindStruct,"os.PathError","PathError","os",function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError","SyscallError","os",function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});AS=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError","LinkError","os",function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});BI=$pkg.File=$newType(0,$kindStruct,"os.File","File","os",function(file_){this.$val=this;if(arguments.length===0){this.file=DU.nil;return;}this.file=file_;});BJ=$pkg.file=$newType(0,$kindStruct,"os.file","file","os",function(fd_,name_,dirinfo_,nepipe_){this.$val=this;if(arguments.length===0){this.fd=0;this.name="";this.dirinfo=DC.nil;this.nepipe=0;return;}this.fd=fd_;this.name=name_;this.dirinfo=dirinfo_;this.nepipe=nepipe_;});BL=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo","dirInfo","os",function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=DD.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});CW=$pkg.FileInfo=$newType(8,$kindInterface,"os.FileInfo","FileInfo","os",null);CX=$pkg.FileMode=$newType(4,$kindUint32,"os.FileMode","FileMode","os",null);CZ=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat","fileStat","os",function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new D.Time.ptr(new $Int64(0,0),0,EB.nil);this.sys=$ifaceNil;return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});DB=$sliceType($String);DC=$ptrType(BL);DD=$sliceType($Uint8);DF=$sliceType(CW);DG=$ptrType(BI);DH=$ptrType(Z);DI=$ptrType(AS);DP=$arrayType($Uint8,4);DU=$ptrType(BJ);DV=$funcType([DU],[$error],false);DW=$ptrType($Int32);DX=$arrayType($Int64,2);EB=$ptrType(D.Location);ED=$arrayType($Uint8,32);EE=$ptrType(CZ);EF=$ptrType(AA);I=function(){var $ptr;return $pkg.Args;};J=function(){var $ptr,c,d,e;c=$global.process;if(!(c===undefined)){d=c.argv;$pkg.Args=$makeSlice(DB,($parseInt(d.length)-1>>0));e=0;while(true){if(!(e<($parseInt(d.length)-1>>0))){break;}((e<0||e>=$pkg.Args.$length)?$throwRuntimeError("index out of range"):$pkg.Args.$array[$pkg.Args.$offset+e]=$internalize(d[(e+1>>0)],$String));e=e+(1)>>0;}}if($pkg.Args.$length===0){$pkg.Args=new DB(["?"]);}};K=function(){var $ptr;};BI.ptr.prototype.readdirnames=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;d=DB.nil;e=$ifaceNil;f=this;if(f.file.dirinfo===DC.nil){f.file.dirinfo=new BL.ptr(DD.nil,0,0);f.file.dirinfo.buf=$makeSlice(DD,4096);}g=f.file.dirinfo;h=c;if(h<=0){h=100;c=-1;}d=$makeSlice(DB,0,h);while(true){if(!(!((c===0)))){break;}if(g.bufp>=g.nbuf){g.bufp=0;i=$ifaceNil;k=C.ReadDirent(f.file.fd,g.buf);j=AZ(k[0],k[1]);g.nbuf=j[0];i=j[1];if(!($interfaceIsEqual(i,$ifaceNil))){l=d;m=AB("readdirent",i);d=l;e=m;return[d,e];}if(g.nbuf<=0){break;}}n=0;o=0;p=n;q=o;r=C.ParseDirent($subslice(g.buf,g.bufp,g.nbuf),c,d);p=r[0];q=r[1];d=r[2];g.bufp=g.bufp+(p)>>0;c=c-(q)>>0;}if(c>=0&&(d.$length===0)){s=d;t=B.EOF;d=s;e=t;return[d,e];}u=d;v=$ifaceNil;d=u;e=v;return[d,e];};BI.prototype.readdirnames=function(c){return this.$val.readdirnames(c);};BI.ptr.prototype.Readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DF.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}j=f.readdir(c);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d=i[0];e=i[1];$s=2;case 2:return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.Readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.Readdir=function(c){return this.$val.Readdir(c);};BI.ptr.prototype.Readdirnames=function(c){var $ptr,c,d,e,f,g,h,i;d=DB.nil;e=$ifaceNil;f=this;if(f===DG.nil){g=DB.nil;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.readdirnames(c);d=i[0];e=i[1];return[d,e];};BI.prototype.Readdirnames=function(c){return this.$val.Readdirnames(c);};Z.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Path+": "+d;}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Z.prototype.Error=function(){return this.$val.Error();};AA.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Syscall+": "+d;}return;}if($f===undefined){$f={$blk:AA.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AA.prototype.Error=function(){return this.$val.Error();};AB=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,$ifaceNil)){return $ifaceNil;}return new AA.ptr(c,d);};$pkg.NewSyscallError=AB;AD=function(c){var $ptr,c;return AG(c);};$pkg.IsNotExist=AD;AG=function(c){var $ptr,c,d,e,f,g;d=c;if(d===$ifaceNil){e=d;return false;}else if($assertType(d,DH,true)[1]){f=d.$val;c=f.Err;}else if($assertType(d,DI,true)[1]){g=d.$val;c=g.Err;}return $interfaceIsEqual(c,new C.Errno(2))||$interfaceIsEqual(c,$pkg.ErrNotExist);};BI.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.file.name;};BI.prototype.Name=function(){return this.$val.Name();};AS.ptr.prototype.Error=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return c.Op+" "+c.Old+" "+c.New+": "+d;}return;}if($f===undefined){$f={$blk:AS.ptr.prototype.Error};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AS.prototype.Error=function(){return this.$val.Error();};BI.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.read(c);d=i[0];j=i[1];if(d<0){d=0;}if((d===0)&&c.$length>0&&$interfaceIsEqual(j,$ifaceNil)){k=0;l=B.EOF;d=k;e=l;return[d,e];}if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("read",f.file.name,j);}m=d;n=e;d=m;e=n;return[d,e];};BI.prototype.Read=function(c){return this.$val.Read(c);};BI.ptr.prototype.ReadAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pread(c,d);k=j[0];l=j[1];if((k===0)&&$interfaceIsEqual(l,$ifaceNil)){m=e;n=B.EOF;e=m;f=n;return[e,f];}if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("read",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(o=new $Int64(0,k),new $Int64(d.$high+o.$high,d.$low+o.$low));}return[e,f];};BI.prototype.ReadAt=function(c,d){return this.$val.ReadAt(c,d);};BI.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.write(c);d=i[0];j=i[1];if(d<0){d=0;}if(!((d===c.$length))){e=B.ErrShortWrite;}BM(f,j);if(!($interfaceIsEqual(j,$ifaceNil))){e=new Z.ptr("write",f.file.name,j);}k=d;l=e;d=k;e=l;return[d,e];};BI.prototype.Write=function(c){return this.$val.Write(c);};BI.ptr.prototype.WriteAt=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if(g===DG.nil){h=0;i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}while(true){if(!(c.$length>0)){break;}j=g.pwrite(c,d);k=j[0];l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){f=new Z.ptr("write",g.file.name,l);break;}e=e+(k)>>0;c=$subslice(c,k);d=(m=new $Int64(0,k),new $Int64(d.$high+m.$high,d.$low+m.$low));}return[e,f];};BI.prototype.WriteAt=function(c,d){return this.$val.WriteAt(c,d);};BI.ptr.prototype.Seek=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p;e=new $Int64(0,0);f=$ifaceNil;g=this;if(g===DG.nil){h=new $Int64(0,0);i=$pkg.ErrInvalid;e=h;f=i;return[e,f];}j=g.seek(c,d);k=j[0];l=j[1];if($interfaceIsEqual(l,$ifaceNil)&&!(g.file.dirinfo===DC.nil)&&!((k.$high===0&&k.$low===0))){l=new C.Errno(21);}if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=new Z.ptr("seek",g.file.name,l);e=m;f=n;return[e,f];}o=k;p=$ifaceNil;e=o;f=p;return[e,f];};BI.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};BI.ptr.prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h,i;d=0;e=$ifaceNil;f=this;if(f===DG.nil){g=0;h=$pkg.ErrInvalid;d=g;e=h;return[d,e];}i=f.Write(new DD($stringToBytes(c)));d=i[0];e=i[1];return[d,e];};BI.prototype.WriteString=function(c){return this.$val.WriteString(c);};BI.ptr.prototype.Chdir=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fchdir(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return new Z.ptr("chdir",c.file.name,d);}return $ifaceNil;};BI.prototype.Chdir=function(){return this.$val.Chdir();};AZ=function(c,d){var $ptr,c,d;if(c<0){c=0;}return[c,d];};BA=function(){$panic("Native function not implemented: os.sigpipe");};BC=function(c){var $ptr,c,d;d=0;d=(d|((new CX(c).Perm()>>>0)))>>>0;if(!((((c&8388608)>>>0)===0))){d=(d|(2048))>>>0;}if(!((((c&4194304)>>>0)===0))){d=(d|(1024))>>>0;}if(!((((c&1048576)>>>0)===0))){d=(d|(512))>>>0;}return d;};BI.ptr.prototype.Chmod=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Fchmod(d.file.fd,BC(c));if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("chmod",d.file.name,e);}return $ifaceNil;};BI.prototype.Chmod=function(c){return this.$val.Chmod(c);};BI.ptr.prototype.Chown=function(c,d){var $ptr,c,d,e,f;e=this;if(e===DG.nil){return $pkg.ErrInvalid;}f=C.Fchown(e.file.fd,c,d);if(!($interfaceIsEqual(f,$ifaceNil))){return new Z.ptr("chown",e.file.name,f);}return $ifaceNil;};BI.prototype.Chown=function(c,d){return this.$val.Chown(c,d);};BI.ptr.prototype.Truncate=function(c){var $ptr,c,d,e;d=this;if(d===DG.nil){return $pkg.ErrInvalid;}e=C.Ftruncate(d.file.fd,c);if(!($interfaceIsEqual(e,$ifaceNil))){return new Z.ptr("truncate",d.file.name,e);}return $ifaceNil;};BI.prototype.Truncate=function(c){return this.$val.Truncate(c);};BI.ptr.prototype.Sync=function(){var $ptr,c,d;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}d=C.Fsync(c.file.fd);if(!($interfaceIsEqual(d,$ifaceNil))){return AB("fsync",d);}return $ifaceNil;};BI.prototype.Sync=function(){return this.$val.Sync();};BI.ptr.prototype.Fd=function(){var $ptr,c;c=this;if(c===DG.nil){return 4294967295;}return(c.file.fd>>>0);};BI.prototype.Fd=function(){return this.$val.Fd();};BK=function(c,d){var $ptr,c,d,e,f;e=(c>>0);if(e<0){return DG.nil;}f=new BI.ptr(new BJ.ptr(e,d,DC.nil,0));F.SetFinalizer(f.file,new DV($methodExpr(DU,"close")));return f;};$pkg.NewFile=BK;BM=function(c,d){var $ptr,c,d;if($interfaceIsEqual(d,new C.Errno(32))){if(G.AddInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),1)>=10){BA();}}else{G.StoreInt32((c.$ptr_nepipe||(c.$ptr_nepipe=new DW(function(){return this.$target.file.nepipe;},function($v){this.$target.file.nepipe=$v;},c))),0);}};BI.ptr.prototype.Close=function(){var $ptr,c;c=this;if(c===DG.nil){return $pkg.ErrInvalid;}return c.file.close();};BI.prototype.Close=function(){return this.$val.Close();};BJ.ptr.prototype.close=function(){var $ptr,c,d,e;c=this;if(c===DU.nil||c.fd<0){return new C.Errno(22);}d=$ifaceNil;e=C.Close(c.fd);if(!($interfaceIsEqual(e,$ifaceNil))){d=new Z.ptr("close",c.name,e);}c.fd=-1;F.SetFinalizer(c,$ifaceNil);return d;};BJ.prototype.close=function(){return this.$val.close();};BI.ptr.prototype.Stat=function(){var $ptr,c,d,e;c=this;if(c===DG.nil){return[$ifaceNil,$pkg.ErrInvalid];}d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Fstat(c.file.fd,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("stat",c.file.name,e)];}return[CN(d,c.file.name),$ifaceNil];};BI.prototype.Stat=function(){return this.$val.Stat();};BP=function(c){var $ptr,c,d,e;d=new C.Stat_t.ptr(0,0,0,new $Uint64(0,0),0,0,0,DP.zero(),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new C.Timespec.ptr(new $Int64(0,0),new $Int64(0,0)),new $Int64(0,0),new $Int64(0,0),0,0,0,0,DX.zero());e=C.Lstat(c,d);if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,new Z.ptr("lstat",c,e)];}return[CN(d,c),$ifaceNil];};$pkg.Lstat=BP;BI.ptr.prototype.readdir=function(c){var $ptr,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;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:d=DF.nil;e=$ifaceNil;f=this;g=f.file.name;if(g===""){g=".";}h=f.Readdirnames(c);i=h[0];e=h[1];d=$makeSlice(DF,0,i.$length);j=i;k=0;case 1:if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);n=AX(g+"/"+l);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(AD(p)){k++;$s=1;continue;}if(!($interfaceIsEqual(p,$ifaceNil))){q=d;r=p;d=q;e=r;return[d,e];}d=$append(d,o);k++;$s=1;continue;case 2:s=d;t=e;d=s;e=t;return[d,e];}return;}if($f===undefined){$f={$blk:BI.ptr.prototype.readdir};}$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.$s=$s;$f.$r=$r;return $f;};BI.prototype.readdir=function(c){return this.$val.readdir(c);};BI.ptr.prototype.read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}h=C.Read(f.file.fd,c);g=AZ(h[0],h[1]);d=g[0];e=g[1];return[d,e];};BI.prototype.read=function(c){return this.$val.read(c);};BI.ptr.prototype.pread=function(c,d){var $ptr,c,d,e,f,g,h,i;e=0;f=$ifaceNil;g=this;if(true&&c.$length>1073741824){c=$subslice(c,0,1073741824);}i=C.Pread(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pread=function(c,d){return this.$val.pread(c,d);};BI.ptr.prototype.write=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m;d=0;e=$ifaceNil;f=this;while(true){g=c;if(true&&g.$length>1073741824){g=$subslice(g,0,1073741824);}i=C.Write(f.file.fd,g);h=AZ(i[0],i[1]);j=h[0];k=h[1];d=d+(j)>>0;if(01073741824){c=$subslice(c,0,1073741824);}i=C.Pwrite(g.file.fd,c,d);h=AZ(i[0],i[1]);e=h[0];f=h[1];return[e,f];};BI.prototype.pwrite=function(c,d){return this.$val.pwrite(c,d);};BI.ptr.prototype.seek=function(c,d){var $ptr,c,d,e,f,g,h;e=new $Int64(0,0);f=$ifaceNil;g=this;h=C.Seek(g.file.fd,c,d);e=h[0];f=h[1];return[e,f];};BI.prototype.seek=function(c,d){return this.$val.seek(c,d);};BS=function(c){var $ptr,c,d;d=c.length-1>>0;while(true){if(!(d>0&&(c.charCodeAt(d)===47))){break;}c=c.substring(0,d);d=d-(1)>>0;}d=d-(1)>>0;while(true){if(!(d>=0)){break;}if(c.charCodeAt(d)===47){c=c.substring((d+1>>0));break;}d=d-(1)>>0;}return c;};BZ=function(){var $ptr;BX=CA;};CA=function(c){var $ptr,c;return!($interfaceIsEqual(c,new C.Errno(45)));};CF=function(){var $ptr;$pkg.Args=I();};CL=function(c){var $ptr,c;if(c===0){K();}C.Exit(c);};$pkg.Exit=CL;CN=function(c,d){var $ptr,c,d,e,f;e=new CZ.ptr(BS(d),c.Size,0,$clone(CO(c.Mtimespec),D.Time),c);e.mode=(((c.Mode&511)>>>0)>>>0);f=(c.Mode&61440)>>>0;if(f===24576||f===57344){e.mode=(e.mode|(67108864))>>>0;}else if(f===8192){e.mode=(e.mode|(69206016))>>>0;}else if(f===16384){e.mode=(e.mode|(2147483648))>>>0;}else if(f===4096){e.mode=(e.mode|(33554432))>>>0;}else if(f===40960){e.mode=(e.mode|(134217728))>>>0;}else if(f===32768){}else if(f===49152){e.mode=(e.mode|(16777216))>>>0;}if(!((((c.Mode&1024)>>>0)===0))){e.mode=(e.mode|(4194304))>>>0;}if(!((((c.Mode&2048)>>>0)===0))){e.mode=(e.mode|(8388608))>>>0;}if(!((((c.Mode&512)>>>0)===0))){e.mode=(e.mode|(1048576))>>>0;}return e;};CO=function(c){var $ptr,c;c=$clone(c,C.Timespec);return D.Unix(c.Sec,c.Nsec);};CU=function(){var $ptr,c,d,e,f,g,h,i;c=C.Sysctl("kern.osrelease");d=c[0];e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){return;}f=0;g=d;h=0;while(true){if(!(h2||(f===2)&&d.charCodeAt(0)>=49&&d.charCodeAt(1)>=49){CT=true;}};CX.prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this.$val;d=ED.zero();e=0;f="dalTLDpSugct";g=0;while(true){if(!(g>0)>>>0),k<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(j<<24>>>24));e=e+(1)>>0;}g+=h[1];}if(e===0){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);e=e+(1)>>0;}l="rwxrwxrwx";m=0;while(true){if(!(m>0)>>>0),q<32?(1<>>0)))>>>0)===0))){((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(p<<24>>>24));}else{((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=45);}e=e+(1)>>0;m+=n[1];}return $bytesToString($subslice(new DD(d),0,e));};$ptrType(CX).prototype.String=function(){return new CX(this.$get()).String();};CX.prototype.IsDir=function(){var $ptr,c;c=this.$val;return!((((c&2147483648)>>>0)===0));};$ptrType(CX).prototype.IsDir=function(){return new CX(this.$get()).IsDir();};CX.prototype.IsRegular=function(){var $ptr,c;c=this.$val;return((c&2399141888)>>>0)===0;};$ptrType(CX).prototype.IsRegular=function(){return new CX(this.$get()).IsRegular();};CX.prototype.Perm=function(){var $ptr,c;c=this.$val;return(c&511)>>>0;};$ptrType(CX).prototype.Perm=function(){return new CX(this.$get()).Perm();};CZ.ptr.prototype.Name=function(){var $ptr,c;c=this;return c.name;};CZ.prototype.Name=function(){return this.$val.Name();};CZ.ptr.prototype.IsDir=function(){var $ptr,c;c=this;return new CX(c.Mode()).IsDir();};CZ.prototype.IsDir=function(){return this.$val.IsDir();};CZ.ptr.prototype.Size=function(){var $ptr,c;c=this;return c.size;};CZ.prototype.Size=function(){return this.$val.Size();};CZ.ptr.prototype.Mode=function(){var $ptr,c;c=this;return c.mode;};CZ.prototype.Mode=function(){return this.$val.Mode();};CZ.ptr.prototype.ModTime=function(){var $ptr,c;c=this;return c.modTime;};CZ.prototype.ModTime=function(){return this.$val.ModTime();};CZ.ptr.prototype.Sys=function(){var $ptr,c;c=this;return c.sys;};CZ.prototype.Sys=function(){return this.$val.Sys();};DH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DI.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"readdirnames",name:"readdirnames",pkg:"os",typ:$funcType([$Int],[DB,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[DF,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[DB,$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([DD],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([CX],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[CW,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int],[DF,$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([DD],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([DD,$Int64],[$Int,$error],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)}];DU.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];CX.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[CX],false)}];EE.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}];Z.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Path",name:"Path",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AA.init([{prop:"Syscall",name:"Syscall",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AS.init([{prop:"Op",name:"Op",pkg:"",typ:$String,tag:""},{prop:"Old",name:"Old",pkg:"",typ:$String,tag:""},{prop:"New",name:"New",pkg:"",typ:$String,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);BI.init([{prop:"file",name:"",pkg:"os",typ:DU,tag:""}]);BJ.init([{prop:"fd",name:"fd",pkg:"os",typ:$Int,tag:""},{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",pkg:"os",typ:DC,tag:""},{prop:"nepipe",name:"nepipe",pkg:"os",typ:$Int32,tag:""}]);BL.init([{prop:"buf",name:"buf",pkg:"os",typ:DD,tag:""},{prop:"nbuf",name:"nbuf",pkg:"os",typ:$Int,tag:""},{prop:"bufp",name:"bufp",pkg:"os",typ:$Int,tag:""}]);CW.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[D.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[CX],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);CZ.init([{prop:"name",name:"name",pkg:"os",typ:$String,tag:""},{prop:"size",name:"size",pkg:"os",typ:$Int64,tag:""},{prop:"mode",name:"mode",pkg:"os",typ:CX,tag:""},{prop:"modTime",name:"modTime",pkg:"os",typ:D.Time,tag:""},{prop:"sys",name:"sys",pkg:"os",typ:$emptyInterface,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=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=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$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;}$pkg.Args=DB.nil;CT=false;$pkg.ErrInvalid=E.New("invalid argument");$pkg.ErrPermission=E.New("permission denied");$pkg.ErrExist=E.New("file already exists");$pkg.ErrNotExist=E.New("file does not exist");AQ=E.New("os: process already finished");$pkg.Stdin=BK((C.Stdin>>>0),"/dev/stdin");$pkg.Stdout=BK((C.Stdout>>>0),"/dev/stdout");$pkg.Stderr=BK((C.Stderr>>>0),"/dev/stderr");BX=(function(c){var $ptr,c;return true;});AX=BP;J();BZ();CF();CU();}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,Y,AC,AH,AO,AX,CK,CL,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CW,CX,G,AD,AI,AJ,AK,AP,CF,AQ,CG,BD,BE,BF,BG,BM,Z,AA,AB,AE,AF,AG,AL,AM,AN,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BN,BO,BP,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal","decimal","strconv",function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CN.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","leftCheat","strconv",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","extFloat","strconv",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","floatInfo","strconv",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","decimalSlice","strconv",function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=CP.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CK=$sliceType(AC);CL=$sliceType($Uint16);CM=$sliceType($Uint32);CN=$arrayType($Uint8,800);CP=$sliceType($Uint8);CQ=$arrayType($Uint8,24);CR=$arrayType($Uint8,32);CS=$ptrType(AO);CT=$arrayType($Uint8,65);CU=$arrayType($Uint8,4);CV=$ptrType(Y);CW=$ptrType(AX);CX=$ptrType(AH);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(CP,b);d=0;if(a.nd===0){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):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 CP(a.d),0,a.nd)))>>0;}else if(a.dp>0;((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new CP(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new CP(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=a.$length)?$throwRuntimeError("index out of range"):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"):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=CQ.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"):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"):g[h]=((d<0||d>=c.length)?$throwRuntimeError("index out of range"):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"):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;while(true){if(!(c=j.length)?$throwRuntimeError("index out of range"):j[c]))>>>0);m=(l=b,l<32?(e>>>l):0)>>>0;e=e-(((n=b,n<32?(m<>>0))>>>0;(o=a.d,((d<0||d>=o.length)?$throwRuntimeError("index out of range"):o[d]=((m+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+k>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}q=(p=b,p<32?(e>>>p):0)>>>0;e=e-(((r=b,r<32?(q<>>0))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?$throwRuntimeError("index out of range"):s[d]=((q+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(q>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=a.$length){return true;}if(!((((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])>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"):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new CP(a.d),0,a.nd),((b<0||b>=AD.$length)?$throwRuntimeError("index out of range"):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"):h[d]))>>>0)-48>>>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"):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"):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"):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"):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"):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"):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?$throwRuntimeError("index out of range"):g[c]=((f=b.d,((c<0||c>=f.length)?$throwRuntimeError("index out of range"):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=f.length)?$throwRuntimeError("index out of range"):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b>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.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;a=$clone(a,AH);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"):AK[n])),(a.$high=AK.length)?$throwRuntimeError("index out of range"):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply(((l<0||l>=AI.length)?$throwRuntimeError("index out of range"):AI[l]));h=h+(4)>>0;}g.Multiply(((j<0||j>=AJ.length)?$throwRuntimeError("index out of range"):AJ[j]));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<>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>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"):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(((g<0||g>=AJ.length)?$throwRuntimeError("index out of range"):AJ[g]));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(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));b.Multiply(((f<0||f>=AJ.length)?$throwRuntimeError("index out of range"):AJ[f]));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"):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=CR.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"):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"):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?$throwRuntimeError("index out of range"):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"):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"):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<h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<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"):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"):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"):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?$throwRuntimeError("index out of range"):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=CQ.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"):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=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?$throwRuntimeError("index out of range"):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"):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>0)-1>>0,((ap<0||ap>=AK.length)?$throwRuntimeError("index out of range"):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"):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>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"):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>0;(m=a.d,((k<0||k>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?$throwRuntimeError("index out of range"):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.$highs.$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"):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};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=CS.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<>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<>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(CP.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=CR.zero();t.d=new CP(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=CQ.zero();t.d=new CP(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,t,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(CN.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(CP.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new CP(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 CP(h.d),h.nd,h.dp,false));}return AV(a,j,d,i,b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;d=$clone(d,AX);g=f;if(g===101||g===69){return AY(a,c,d,e,f);}else if(g===102){return AZ(a,c,d,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,d,e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,d,BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,aa,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;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(CN.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(CN.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=w.length)?$throwRuntimeError("index out of range"):w[p]));}else{t=48;}u=(x=a.d,((p<0||p>=x.length)?$throwRuntimeError("index out of range"):x[p]));if(p=y.length)?$throwRuntimeError("index out of range"):y[p]));}else{v=48;}z=!((t===u))||(o&&(t===u)&&((p+1>>0)===l.nd));aa=!((u===v))&&(o||(u+1<<24>>>24)>0)>0);return;}else if(z){a.RoundDown(p+1>>0);return;}else if(aa){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;c=$clone(c,AX);if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?$throwRuntimeError("index out of range"):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>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;c=$clone(c,AX);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>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f>0;if(0<=h&&h=i.$length)?$throwRuntimeError("index out of range"):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=BN(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=BN(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(ab){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BN(CP.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=BI;BJ=function(a){var $ptr,a;return BI(new $Int64(0,a),10);};$pkg.Itoa=BJ;BN=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=CP.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=CT.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){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"):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"):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"):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BM.length)?$throwRuntimeError("index out of range"):BM[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"):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"):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"):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"):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new CP(h),i));return[f,g];}g=$bytesToString($subslice(new CP(h),i));return[f,g];};BO=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=CU.zero();f=$makeSlice(CP,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")));f=$append(f,b);g=0;while(true){if(!(a.length>0)){break;}h=(a.charCodeAt(0)>>0);g=1;if(h>=128){i=C.DecodeRuneInString(a);h=i[0];g=i[1];}if((g===1)&&(h===65533)){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));a=a.substring(g);continue;}if((h===(b>>0))||(h===92)){f=$append(f,92);f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}if(c){if(h<128&&CE(h)){f=$append(f,(h<<24>>>24));a=a.substring(g);continue;}}else if(CE(h)){j=C.EncodeRune(new CP(d),h);f=$appendSlice(f,$subslice(new CP(d),0,j));a=a.substring(g);continue;}k=h;if(k===7){f=$appendSlice(f,"\\a");}else if(k===8){f=$appendSlice(f,"\\b");}else if(k===12){f=$appendSlice(f,"\\f");}else if(k===10){f=$appendSlice(f,"\\n");}else if(k===13){f=$appendSlice(f,"\\r");}else if(k===9){f=$appendSlice(f,"\\t");}else if(k===11){f=$appendSlice(f,"\\v");}else{if(h<32){f=$appendSlice(f,"\\x");f=$append(f,"0123456789abcdef".charCodeAt((a.charCodeAt(0)>>>4<<24>>>24)));f=$append(f,"0123456789abcdef".charCodeAt(((a.charCodeAt(0)&15)>>>0)));}else if(h>1114111){h=65533;f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else if(h<65536){f=$appendSlice(f,"\\u");l=12;while(true){if(!(l>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((l>>>0),31))>>0)&15)));l=l-(4)>>0;}}else{f=$appendSlice(f,"\\U");m=28;while(true){if(!(m>=0)){break;}f=$append(f,"0123456789abcdef".charCodeAt((((h>>$min((m>>>0),31))>>0)&15)));m=m-(4)>>0;}}}a=a.substring(g);}f=$append(f,b);return $bytesToString(f);};BP=function(a){var $ptr,a;return BO(a,34,false);};$pkg.Quote=BP;BR=function(a){var $ptr,a;return BO(a,34,true);};$pkg.QuoteToASCII=BR;BT=function(a){var $ptr,a;return BO($encodeRune(a),39,false);};$pkg.QuoteRune=BT;BU=function(a,b){var $ptr,a,b;return $appendSlice(a,BT(b));};$pkg.AppendQuoteRune=BU;BV=function(a){var $ptr,a;return BO($encodeRune(a),39,true);};$pkg.QuoteRuneToASCII=BV;BW=function(a,b){var $ptr,a,b;return $appendSlice(a,BV(b));};$pkg.AppendQuoteRuneToASCII=BW;BX=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=a.substring(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=BX;BY=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];};BZ=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=a.substring(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=a.substring(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=a.substring(2);t=s;switch(0){default: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>0)|z;x=x+(1)>>0;}a=a.substring(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=a.substring(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=BZ;CA=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,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=a.length;if(d<2){e="";f=$pkg.ErrSyntax;b=e;c=f;return[b,c];}g=a.charCodeAt(0);if(!((g===a.charCodeAt((d-1>>0))))){h="";i=$pkg.ErrSyntax;b=h;c=i;return[b,c];}a=a.substring(1,(d-1>>0));if(g===96){if(CB(a,96)){j="";k=$pkg.ErrSyntax;b=j;c=k;return[b,c];}l=a;m=$ifaceNil;b=l;c=m;return[b,c];}if(!((g===34))&&!((g===39))){n="";o=$pkg.ErrSyntax;b=n;c=o;return[b,c];}if(CB(a,10)){p="";q=$pkg.ErrSyntax;b=p;c=q;return[b,c];}if(!CB(a,92)&&!CB(a,g)){r=g;if(r===34){s=a;t=$ifaceNil;b=s;c=t;return[b,c];}else if(r===39){u=C.DecodeRuneInString(a);v=u[0];w=u[1];if((w===a.length)&&(!((v===65533))||!((w===1)))){x=a;y=$ifaceNil;b=x;c=y;return[b,c];}}}z=CU.zero();ab=$makeSlice(CP,0,(aa=($imul(3,a.length))/2,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}ac=BZ(a,g);ad=ac[0];ae=ac[1];af=ac[2];ag=ac[3];if(!($interfaceIsEqual(ag,$ifaceNil))){ah="";ai=ag;b=ah;c=ai;return[b,c];}a=af;if(ad<128||!ae){ab=$append(ab,(ad<<24>>>24));}else{aj=C.EncodeRune(new CP(z),ad);ab=$appendSlice(ab,$subslice(new CP(z),0,aj));}if((g===39)&&!((a.length===0))){ak="";al=$pkg.ErrSyntax;b=ak;c=al;return[b,c];}}am=$bytesToString(ab);an=$ifaceNil;b=am;c=an;return[b,c];};$pkg.Unquote=CA;CB=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c>0;}return false;};CC=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CD=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>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"):a.$array[a.$offset+h])>0;}else{f=h;}}return e;};CE=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=CC(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+j]))=g.$length||!((((k<0||k>=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CD(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+t]))=131072){return true;}a=a-(65536)>>0;u=CC(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CE;CV.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$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)}];CX.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([CS],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,CS],[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,CS],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([CW,CX,CX],[$Bool],false)}];Y.init([{prop:"d",name:"d",pkg:"strconv",typ:CN,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""},{prop:"trunc",name:"trunc",pkg:"strconv",typ:$Bool,tag:""}]);AC.init([{prop:"delta",name:"delta",pkg:"strconv",typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",pkg:"strconv",typ:$String,tag:""}]);AH.init([{prop:"mant",name:"mant",pkg:"strconv",typ:$Uint64,tag:""},{prop:"exp",name:"exp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",typ:$Bool,tag:""}]);AO.init([{prop:"mantbits",name:"mantbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"expbits",name:"expbits",pkg:"strconv",typ:$Uint,tag:""},{prop:"bias",name:"bias",pkg:"strconv",typ:$Int,tag:""}]);AX.init([{prop:"d",name:"d",pkg:"strconv",typ:CP,tag:""},{prop:"nd",name:"nd",pkg:"strconv",typ:$Int,tag:""},{prop:"dp",name:"dp",pkg:"strconv",typ:$Int,tag:""},{prop:"neg",name:"neg",pkg:"strconv",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;$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CK([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 CL([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,2228,2275,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,3406,3415,3415,3423,3427,3430,3445,3449,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,7295,7360,7367,7376,7417,7424,7669,7676,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,9210,9216,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,11842,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,42925,42928,42935,42999,43051,43056,43065,43072,43127,43136,43204,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 CL([173,907,909,930,1328,1376,1416,1424,1757,2111,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,3200,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,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CM([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65932,65936,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,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,70205,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,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,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,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,124928,125124,125127,125142,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,127386,127462,127490,127504,127546,127552,127560,127568,127569,127744,128720,128736,128748,128752,128755,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129304,129408,129412,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CL([12,39,59,62,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,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,62842,62884]);BM=$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,AK,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CF,CG,CH,DI,DJ,DM,DO,FW,GC,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HD,HE,HF,HG,HH,HI,HJ,HO,HQ,HT,HU,HV,HW,HX,G,L,AW,AX,BB,CE,DV,H,I,J,K,M,N,O,P,Q,R,S,X,Y,Z,AA,AC,AG,AH,AI,AJ,AL,AM,AN,AO,AP,AR,AS,AT,AU,AV,AY,AZ,BA,BC,BD,CJ,CL,CM,CN,DA,DF,DW,EP,ER,ES,ET,EU,EV,EW,EX,EY,EZ,FA,FB,FC,FD,FE,FF,FG,FH,FI,FJ,FK,FL,FM;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];AK=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter","mapIter","reflect",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_;});BM=$pkg.Type=$newType(8,$kindInterface,"reflect.Type","Type","reflect",null);BN=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind","Kind","reflect",null);BO=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype","rtype","reflect",function(size_,ptrdata_,hash_,_$3_,align_,fieldAlign_,kind_,alg_,gcdata_,string_,uncommonType_,ptrToThis_,zero_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this._$3=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=GM.nil;this.gcdata=GN.nil;this.string=GO.nil;this.uncommonType=GP.nil;this.ptrToThis=FW.nil;this.zero=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this._$3=_$3_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.string=string_;this.uncommonType=uncommonType_;this.ptrToThis=ptrToThis_;this.zero=zero_;});BP=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg","typeAlg","reflect",function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});BQ=$pkg.method=$newType(0,$kindStruct,"reflect.method","method","reflect",function(name_,pkgPath_,mtyp_,typ_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.mtyp=FW.nil;this.typ=FW.nil;this.ifn=0;this.tfn=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.mtyp=mtyp_;this.typ=typ_;this.ifn=ifn_;this.tfn=tfn_;});BR=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType","uncommonType","reflect",function(name_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.methods=GQ.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.methods=methods_;});BS=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir","ChanDir","reflect",null);BT=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType","arrayType","reflect",function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.slice=FW.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});BU=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType","chanType","reflect",function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});BV=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType","funcType","reflect",function(rtype_,dotdotdot_,in$2_,out_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.dotdotdot=false;this.in$2=GC.nil;this.out=GC.nil;return;}this.rtype=rtype_;this.dotdotdot=dotdotdot_;this.in$2=in$2_;this.out=out_;});BW=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod","imethod","reflect",function(name_,pkgPath_,typ_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;});BX=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType","interfaceType","reflect",function(rtype_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.methods=GR.nil;return;}this.rtype=rtype_;this.methods=methods_;});BY=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType","mapType","reflect",function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.key=FW.nil;this.elem=FW.nil;this.bucket=FW.nil;this.hmap=FW.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=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_;});BZ=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType","ptrType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CA=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType","sliceType","reflect",function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.elem=FW.nil;return;}this.rtype=rtype_;this.elem=elem_;});CB=$pkg.structField=$newType(0,$kindStruct,"reflect.structField","structField","reflect",function(name_,pkgPath_,typ_,tag_,offset_){this.$val=this;if(arguments.length===0){this.name=GO.nil;this.pkgPath=GO.nil;this.typ=FW.nil;this.tag=GO.nil;this.offset=0;return;}this.name=name_;this.pkgPath=pkgPath_;this.typ=typ_;this.tag=tag_;this.offset=offset_;});CC=$pkg.structType=$newType(0,$kindStruct,"reflect.structType","structType","reflect",function(rtype_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);this.fields=GS.nil;return;}this.rtype=rtype_;this.fields=fields_;});CD=$pkg.Method=$newType(0,$kindStruct,"reflect.Method","Method","reflect",function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new DI.ptr(FW.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CF=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField","StructField","reflect",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=HG.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_;});CG=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag","StructTag","reflect",null);CH=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan","fieldScan","reflect",function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=HI.nil;this.index=HG.nil;return;}this.typ=typ_;this.index=index_;});DI=$pkg.Value=$newType(0,$kindStruct,"reflect.Value","Value","reflect",function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=FW.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});DJ=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag","flag","reflect",null);DM=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError","ValueError","reflect",function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});DO=$pkg.nonEmptyInterface=$newType(0,$kindStruct,"reflect.nonEmptyInterface","nonEmptyInterface","reflect",function(itab_,word_){this.$val=this;if(arguments.length===0){this.itab=GZ.nil;this.word=0;return;}this.itab=itab_;this.word=word_;});FW=$ptrType(BO);GC=$sliceType(FW);GI=$sliceType($emptyInterface);GJ=$ptrType(C.Object);GK=$funcType([GI],[GJ],true);GL=$sliceType($String);GM=$ptrType(BP);GN=$ptrType($Uint8);GO=$ptrType($String);GP=$ptrType(BR);GQ=$sliceType(BQ);GR=$sliceType(BW);GS=$sliceType(CB);GT=$structType([{prop:"str",name:"str",pkg:"reflect",typ:$String,tag:""}]);GU=$sliceType(GJ);GV=$sliceType(DI);GW=$ptrType(DO);GX=$arrayType($UnsafePointer,100000);GY=$structType([{prop:"ityp",name:"ityp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"link",name:"link",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"bad",name:"bad",pkg:"reflect",typ:$Int32,tag:""},{prop:"unused",name:"unused",pkg:"reflect",typ:$Int32,tag:""},{prop:"fun",name:"fun",pkg:"reflect",typ:GX,tag:""}]);GZ=$ptrType(GY);HA=$sliceType(GI);HD=$ptrType(BQ);HE=$ptrType(BX);HF=$ptrType(BW);HG=$sliceType($Int);HH=$sliceType(CH);HI=$ptrType(CC);HJ=$sliceType($Uint8);HO=$ptrType($UnsafePointer);HQ=$sliceType($Int32);HT=$funcType([$String],[$Bool],false);HU=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);HV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);HW=$arrayType($Uintptr,2);HX=$ptrType(DM);H=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=(function(ag){var $ptr,ag;});$r=ag((ah=new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),new ah.constructor.elem(ah)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ai=new BR.ptr(GO.nil,GO.nil,GQ.nil),new ai.constructor.elem(ai)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aj=new BQ.ptr(GO.nil,GO.nil,FW.nil,FW.nil,0,0),new aj.constructor.elem(aj)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ak=new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,0),new ak.constructor.elem(ak)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((al=new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,0),new al.constructor.elem(al)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((am=new BV.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),false,GC.nil,GC.nil),new am.constructor.elem(am)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((an=new BX.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GR.nil),new an.constructor.elem(an)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ao=new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil,FW.nil,FW.nil,FW.nil,0,0,0,0,0,false),new ao.constructor.elem(ao)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ap=new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new ap.constructor.elem(ap)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((aq=new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),FW.nil),new aq.constructor.elem(aq)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((ar=new CC.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),GS.nil),new ar.constructor.elem(ar)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((as=new BW.ptr(GO.nil,GO.nil,FW.nil),new as.constructor.elem(as)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ag((at=new CB.ptr(GO.nil,GO.nil,FW.nil,GO.nil,0),new at.constructor.elem(at)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;DV=$assertType(R(new $Uint8(0)),FW);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};I=function(ag){var $ptr,ag;return ag.jsType;};J=function(ag){var $ptr,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;if(ag.reflectType===undefined){ah=new BO.ptr((($parseInt(ag.size)>>0)>>>0),0,0,0,0,0,(($parseInt(ag.kind)>>0)<<24>>>24),GM.nil,GN.nil,M(ag.string),GP.nil,FW.nil,0);ah.jsType=ag;ag.reflectType=ah;ai=$methodSet(ag);if(!($internalize(ag.typeName,$String)==="")||!(($parseInt(ai.length)===0))){aj=$makeSlice(GQ,$parseInt(ai.length));ak=aj;al=0;while(true){if(!(al=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+am]),new BQ.ptr(M(an.name),M(an.pkg),J(ao),J($funcType(new($global.Array)(ag).concat(ao.params),ao.results,ao.variadic)),0,0));al++;}ah.uncommonType=new BR.ptr(M(ag.typeName),M(ag.pkg),aj);ah.uncommonType.jsType=ag;}ap=ah.Kind();if(ap===17){K(ah,new BT.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),FW.nil,(($parseInt(ag.len)>>0)>>>0)));}else if(ap===18){aq=3;if(!!(ag.sendOnly)){aq=2;}if(!!(ag.recvOnly)){aq=1;}K(ah,new BU.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem),(aq>>>0)));}else if(ap===19){ar=ag.params;as=$makeSlice(GC,$parseInt(ar.length));at=as;au=0;while(true){if(!(au=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+av]=J(ar[av]));au++;}aw=ag.results;ax=$makeSlice(GC,$parseInt(aw.length));ay=ax;az=0;while(true){if(!(az=ax.$length)?$throwRuntimeError("index out of range"):ax.$array[ax.$offset+ba]=J(aw[ba]));az++;}K(ah,new BV.ptr($clone(ah,BO),!!(ag.variadic),as,ax));}else if(ap===20){bb=ag.methods;bc=$makeSlice(GR,$parseInt(bb.length));bd=bc;be=0;while(true){if(!(be=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bf]),new BW.ptr(M(bg.name),M(bg.pkg),J(bg.typ)));be++;}K(ah,new BX.ptr($clone(ah,BO),bc));}else if(ap===21){K(ah,new BY.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.key),J(ag.elem),FW.nil,FW.nil,0,0,0,0,0,false));}else if(ap===22){K(ah,new BZ.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===23){K(ah,new CA.ptr(new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0),J(ag.elem)));}else if(ap===25){bh=ag.fields;bi=$makeSlice(GS,$parseInt(bh.length));bj=bi;bk=0;while(true){if(!(bk=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bl]),new CB.ptr(M(bm.name),M(bm.pkg),J(bm.typ),M(bm.tag),(bl>>>0)));bk++;}K(ah,new CC.ptr($clone(ah,BO),bi));}}return ag.reflectType;};K=function(ag,ah){var $ptr,ag,ah;ag.kindType=ah;ah.rtype=ag;};M=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new GT.ptr("");ah.str=ag;ai=ah.str;if(ai===""){return GO.nil;}aj=(ak=L[$String.keyFor(ai)],ak!==undefined?[ak.v,true]:[GO.nil,false]);al=aj[0];am=aj[1];if(!am){al=(an||(an=new GO(function(){return ai;},function($v){ai=$v;})));ao=ai;(L||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(ao)]={k:ao,v:al};}return al;};N=function(ag){var $ptr,ag;return!!(I(ag).wrapped);};O=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=I(ai).fields;ak=0;while(true){if(!(ak<$parseInt(aj.length))){break;}al=$internalize(aj[ak].prop,$String);ag[$externalize(al,$String)]=ah[$externalize(al,$String)];ak=ak+(1)>>0;}};P=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;an=ag.Kind();$s=6;case 6:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===17){am=true;$s=5;continue s;}ao=ag.Kind();$s=7;case 7:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===25;case 5:if(am){al=true;$s=4;continue s;}ap=ag.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap===22;case 4:if(al){$s=2;continue;}$s=3;continue;case 2:aq=ag.Kind();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=10;case 10:return new DI.ptr(ak,ah,(ai|(aq>>>0))>>>0);case 3:ar=ag.Kind();$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=12;case 12:return new DI.ptr(ak,$newDataPointer(ah,I(ak.ptrTo())),(((ai|(ar>>>0))>>>0)|64)>>>0);}return;}if($f===undefined){$f={$blk:P};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};Q=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];aj=ag[0].Kind();$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(!((aj===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ah<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ai<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ah>ai){$panic(new $String("reflect.MakeSlice: len > cap"));}ak=P(ag[0],$makeSlice(I(ag[0]),ah,ai,(function(ag){return function $b(){var $ptr,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=ag[0].Elem();$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=2;case 2:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=3;case 3:return al.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};})(ag)),0);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=5;case 5:return ak;}return;}if($f===undefined){$f={$blk:Q};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=Q;R=function(ag){var $ptr,ag;if(!G){return new BO.ptr(0,0,0,0,0,0,0,GM.nil,GN.nil,GO.nil,GP.nil,FW.nil,0);}if($interfaceIsEqual(ag,$ifaceNil)){return $ifaceNil;}return J(ag.constructor);};$pkg.TypeOf=R;S=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){return new DI.ptr(FW.nil,0,0);}ah=P(J(ag.constructor),ag.$val,0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=S;BO.ptr.prototype.ptrTo=function(){var $ptr,ag;ag=this;return J($ptrType(I(ag)));};BO.prototype.ptrTo=function(){return this.$val.ptrTo();};X=function(ag){var $ptr,ag;return J($sliceType(I(ag)));};$pkg.SliceOf=X;Y=function(ag){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=P(ag,I(ag).zero(),0);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$s=2;case 2:return ah;}return;}if($f===undefined){$f={$blk:Y};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=Y;Z=function(ag){var $ptr,ag,ah;ah=ag.Kind();if(ah===25){return new(I(ag).ptr)();}else if(ah===17){return I(ag).zero();}else{return $newDataPointer(I(ag).zero(),I(ag.ptrTo()));}};AA=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.Kind();if(am===3){al.$set((ah.$low<<24>>24));}else if(am===4){al.$set((ah.$low<<16>>16));}else if(am===2||am===5){al.$set((ah.$low>>0));}else if(am===6){al.$set(new $Int64(ah.$high,ah.$low));}else if(am===8){al.$set((ah.$low<<24>>>24));}else if(am===9){al.$set((ah.$low<<16>>>16));}else if(am===7||am===10||am===12){al.$set((ah.$low>>>0));}else if(am===11){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};AC=function(ag,ah,ai){var $ptr,ag,ah,ai;ah.$set(ai.$get());};AG=function(ag,ah){var $ptr,ag,ah,ai,aj;ai=ah;if(!(ai.$get===undefined)){ai=ai.$get();}aj=$internalize(I(ag.Key()).keyFor(ai),$String);return[ai,aj];};AH=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al;aj=AG(ag,ai);ak=aj[1];al=ah[$externalize(ak,$String)];if(al===undefined){return 0;}return $newDataPointer(al.v,I(CJ(ag.Elem())));};AI=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=AG(ag,ai);al=ak[0];am=ak[1];an=aj.$get();ao=ag.Elem();ap=ao.Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(ap===25){$s=1;continue;}$s=2;continue;case 1:aq=I(ao).zero();O(aq,an,ao);an=aq;case 2:ar=new($global.Object)();ar.k=al;ar.v=an;ah[$externalize(am,$String)]=ar;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AJ=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak;aj=AG(ag,ai);ak=aj[1];delete ah[$externalize(ak,$String)];};AL=function(ag,ah){var $ptr,ag,ah;return new AK.ptr(ag,ah,$keys(ah),0);};AM=function(ag){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ag;ai=ah.keys[ah.i];aj=ah.t.Key();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=CJ(aj);$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=I(ak);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=4;case 4:return $newDataPointer(ah.m[$externalize($internalize(ai,$String),$String)].k,al);}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};AN=function(ag){var $ptr,ag,ah;ah=ag;ah.i=ah.i+(1)>>0;};AO=function(ag){var $ptr,ag;return $parseInt($keys(ag).length);};AP=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ag.object();if(ai===I(ag.typ).nil){$s=1;continue;}$s=2;continue;case 1:aj=P(ah,I(ah).nil,ag.flag);$s=3;case 3:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=4;case 4:return aj;case 2:ak=null;al=ah.Kind();$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=am;if(an===23){$s=6;continue;}if(an===22){$s=7;continue;}if(an===25){$s=8;continue;}if(an===17||an===1||an===18||an===19||an===20||an===21||an===24){$s=9;continue;}$s=10;continue;case 6:ao=new(I(ah))(ai.$array);ao.$offset=ai.$offset;ao.$length=ai.$length;ao.$capacity=ai.$capacity;ak=$newDataPointer(ao,I(CJ(ah)));$s=11;continue;case 7:ap=ah.Elem();$s=14;case 14:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=15;case 15:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(aq===25){$s=12;continue;}$s=13;continue;case 12:ar=ah.Elem();$s=18;case 18:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if($interfaceIsEqual(ar,ag.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:ak=ai;$s=11;continue;case 17:ak=new(I(ah))();as=ak;at=ai;au=ah.Elem();$s=19;case 19:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;$r=O(as,at,av);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 13:ak=new(I(ah))(ai.$get,ai.$set);$s=11;continue;case 8:ak=new(I(ah).ptr)();O(ak,ai,ah);$s=11;continue;case 9:ak=ag.ptr;$s=11;continue;case 10:$panic(new DM.ptr("reflect.Convert",am));case 11:aw=ah.common();$s=21;case 21:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=ah.Kind();$s=22;case 22:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=23;case 23:return new DI.ptr(aw,ak,(((ag.flag&96)>>>0)|(ax>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};AR=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au;aj=FW.nil;ak=FW.nil;al=0;ah=ah;am="";if(ah.typ.Kind()===20){an=ah.typ.kindType;if(ai<0||ai>=an.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}ap=(ao=an.methods,((ai<0||ai>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ai]));if(!(ap.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}aq=$pointerOfStructConversion(ah.ptr,GW);if(aq.itab===GZ.nil){$panic(new $String("reflect: "+ag+" of method on nil interface value"));}ak=ap.typ;am=ap.name.$get();}else{ar=ah.typ.uncommonType.uncommon();if(ar===GP.nil||ai<0||ai>=ar.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}at=(as=ar.methods,((ai<0||ai>=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ai]));if(!(at.pkgPath===GO.nil)){$panic(new $String("reflect: "+ag+" of unexported method"));}ak=at.mtyp;am=$internalize($methodSet(I(ah.typ))[ai].prop,$String);}au=ah.object();if(N(ah.typ)){au=new(I(ah.typ))(au);}al=au[$externalize(am,$String)];return[aj,ak,al];};AS=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.Interface",0));}if(ah&&!((((ag.flag&32)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ag.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Interface",ag);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;case 2:if(N(ag.typ)){return new(I(ag.typ))(ag.object());}return ag.object();}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};AT=function(ag,ah,ai){var $ptr,ag,ah,ai;ai.$set(ah);};AU=function(){var $ptr;return"?FIXME?";};AV=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=[ai];aj=[aj];ah=ah;if(((ah.flag&256)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}ak=AR(ag,ah,(ah.flag>>0)>>9>>0);ai[0]=ak[2];aj[0]=ah.object();if(N(ah.typ)){aj[0]=new(I(ah.typ))(aj[0]);}al=$makeFunc((function(ai,aj){return function(al){var $ptr,al;return ai[0].apply(aj[0],$externalize(al,GU));};})(ai,aj));am=ah.Type().common();$s=1;case 1:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=2;case 2:return new DI.ptr(am,al,(((ah.flag&32)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.pointers=function(){var $ptr,ag,ah;ag=this;ah=ag.Kind();if(ah===22||ah===21||ah===18||ah===19||ah===25||ah===17){return true;}else{return false;}};BO.prototype.pointers=function(){return this.$val.pointers();};BO.ptr.prototype.Comparable=function(){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=ag.Kind();if(ah===19||ah===23||ah===21){$s=1;continue;}if(ah===17){$s=2;continue;}if(ah===25){$s=3;continue;}$s=4;continue;case 1:return false;case 2:ai=ag.Elem().Comparable();$s=5;case 5:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=6;case 6:return ai;case 3:aj=0;case 7:if(!(aj>0;$s=7;continue;case 8:case 4:return true;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Comparable=function(){return this.$val.Comparable();};BR.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai===GP.nil||ag<0||ag>=ai.methods.$length){$panic(new $String("reflect: Method index out of range"));}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));if(!(ak.name===GO.nil)){ah.Name=ak.name.$get();}al=19;if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();al=(al|(32))>>>0;}am=ak.typ;ah.Type=am;an=$internalize($methodSet(ai.jsType)[ag].prop,$String);ao=$makeFunc((function(ao){var $ptr,ao,ap;ap=(0>=ao.$length?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+0]);return ap[$externalize(an,$String)].apply(ap,$externalize($subslice(ao,1),GU));}));ah.Func=new DI.ptr(am,ao,al);ah.Index=ag;return ah;};BR.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.object=function(){var $ptr,ag,ah,ai,aj;ag=this;if((ag.typ.Kind()===17)||(ag.typ.Kind()===25)){return ag.ptr;}if(!((((ag.flag&64)>>>0)===0))){ah=ag.ptr.$get();if(!(ah===$ifaceNil)&&!(ah.constructor===I(ag.typ))){ai=ag.typ.Kind();switch(0){default:if(ai===11||ai===6){ah=new(I(ag.typ))(ah.$high,ah.$low);}else if(ai===15||ai===16){ah=new(I(ag.typ))(ah.$real,ah.$imag);}else if(ai===23){if(ah===ah.constructor.nil){ah=I(ag.typ).nil;break;}aj=new(I(ag.typ))(ah.$array);aj.$offset=ah.$offset;aj.$length=ah.$length;aj.$capacity=ah.$capacity;ah=aj;}}}return ah;}return ag.ptr;};DI.prototype.object=function(){return this.$val.object();};DI.ptr.prototype.call=function(ag,ah){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=ai.typ;ak=0;al=null;if(!((((ai.flag&256)>>>0)===0))){am=AR(ag,ai,(ai.flag>>0)>>9>>0);aj=am[1];ak=am[2];al=ai.object();if(N(ai.typ)){al=new(I(ai.typ))(al);}}else{ak=ai.object();al=undefined;}if(ak===0){$panic(new $String("reflect.Value.Call: call of nil function"));}an=ag==="CallSlice";ao=aj.NumIn();if(an){if(!aj.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ah.$lengthao){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(aj.IsVariadic()){ao=ao-(1)>>0;}if(ah.$lengthao){$panic(new $String("reflect: Call with too many input arguments"));}}ap=ah;aq=0;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]);if(ar.Kind()===0){$panic(new $String("reflect: "+ag+" using zero Value argument"));}aq++;}as=0;case 1:if(!(as=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+as]).Type();au=aj.In(as);av=at;aw=au;ax=av.AssignableTo(aw);$s=5;case 5:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(!ax){$s=3;continue;}$s=4;continue;case 3:ay=av.String();$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=aw.String();$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}$panic(new $String("reflect: "+ag+" using "+ay+" as type "+az));case 4:as=as+(1)>>0;$s=1;continue;case 2:if(!an&&aj.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:ba=ah.$length-ao>>0;bb=Q(aj.In(ao),ba,ba);$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=aj.In(ao).Elem();$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=0;case 12:if(!(bf>0,((bg<0||bg>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+bg]));bi=bh.Type();bj=bi.AssignableTo(be);$s=16;case 16:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}if(!bj){$s=14;continue;}$s=15;continue;case 14:bk=bi.String();$s=17;case 17:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=be.String();$s=18;case 18:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bk+" as type "+bl+" in "+ag));case 15:bm=bc.Index(bf);$s=19;case 19:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}$r=bm.Set(bh);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=bf+(1)>>0;$s=12;continue;case 13:bn=ah;ah=$makeSlice(GV,(ao+1>>0));$copySlice($subslice(ah,0,ao),bn);((ao<0||ao>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ao]=bc);case 9:bo=ah.$length;if(!((bo===aj.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bp=aj.NumOut();bq=new($global.Array)(aj.NumIn());br=ah;bs=0;case 21:if(!(bs=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]);bv=aj.In(bt);bw=aj.In(bt).common();$s=23;case 23:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=0;bz=bu.assignTo("reflect.Value.Call",bx,by);$s=24;case 24:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}ca=bz.object();$s=25;case 25:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}cb=ca;cc=AZ(bv,cb);$s=26;case 26:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}bq[bt]=cc;bs++;$s=21;continue;case 22:cd=AW(new GI([new $jsObjectPtr(ak),new $jsObjectPtr(al),new $jsObjectPtr(bq)]));$s=27;case 27:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}ce=cd;cf=bp;if(cf===0){$s=28;continue;}if(cf===1){$s=29;continue;}$s=30;continue;case 28:return GV.nil;case 29:cg=P(aj.Out(0),AY(aj.Out(0),ce),0);$s=32;case 32:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}$s=33;case 33:return new GV([$clone(cg,DI)]);case 30:ch=$makeSlice(GV,bp);ci=ch;cj=0;case 34:if(!(cj=ch.$length)?$throwRuntimeError("index out of range"):ch.$array[ch.$offset+ck]=cl);cj++;$s=34;continue;case 35:return ch;case 31:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.call};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.call=function(ag,ah){return this.$val.call(ag,ah);};DI.ptr.prototype.Cap=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17){return ag.typ.Len();}else if(ai===18||ai===23){return $parseInt(ag.object().$capacity)>>0;}$panic(new DM.ptr("reflect.Value.Cap",ah));};DI.prototype.Cap=function(){return this.$val.Cap();};AY=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return new(I(AX))(ah);}return ah;};AZ=function(ag,ah){var $ptr,ag,ah;if($interfaceIsEqual(ag,AX)){return ah.object;}return ah;};DI.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===20){$s=1;continue;}if(ai===22){$s=2;continue;}$s=3;continue;case 1:aj=ag.object();if(aj===$ifaceNil){return new DI.ptr(FW.nil,0,0);}ak=J(aj.constructor);al=P(ak,aj.$val,(ag.flag&32)>>>0);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;case 2:if(ag.IsNil()){return new DI.ptr(FW.nil,0,0);}am=ag.object();an=ag.typ.kindType;ao=(((((ag.flag&32)>>>0)|64)>>>0)|128)>>>0;ao=(ao|((an.elem.Kind()>>>0)))>>>0;return new DI.ptr(an.elem,AY(an.elem,am),ao);case 3:$panic(new DM.ptr("reflect.Value.Elem",ah));case 4:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Elem};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Elem=function(){return this.$val.Elem();};DI.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=this;new DJ(al.flag).mustBe(25);am=al.typ.kindType;if(ag<0||ag>=am.fields.$length){$panic(new $String("reflect: Field index out of range"));}ak[0]=$internalize(I(al.typ).fields[ag].prop,$String);ao=(an=am.fields,((ag<0||ag>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ag]));ai[0]=ao.typ;ap=(al.flag&224)>>>0;if(!(ao.pkgPath===GO.nil)){ap=(ap|(32))>>>0;}ap=(ap|((ai[0].Kind()>>>0)))>>>0;ar=(aq=am.fields,((ag<0||ag>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ag])).tag;if(!(ar===GO.nil)&&!((ag===0))){$s=1;continue;}$s=2;continue;case 1:ah[0]=BA(ar.$get());if(!(ah[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:as=[as];at=al.Field(0);$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}al=at;if(al.typ===AX){$s=8;continue;}$s=9;continue;case 8:as[0]=al.object().object;return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak,as){return function(){var $ptr;return $internalize(as[0][$externalize(ah[0],$String)],I(ai[0]));};})(ah,ai,aj,ak,as),(function(ah,ai,aj,ak,as){return function(au){var $ptr,au;as[0][$externalize(ah[0],$String)]=$externalize(au,I(ai[0]));};})(ah,ai,aj,ak,as)),ap);case 9:if(al.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:au=al.Elem();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}al=au;case 11:$s=5;continue;case 6:case 4:case 2:aj[0]=al.ptr;if(!((((ap&64)>>>0)===0))&&!((ai[0].Kind()===17))&&!((ai[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:return new DI.ptr(ai[0],new(I(CJ(ai[0])))((function(ah,ai,aj,ak){return function(){var $ptr;return AY(ai[0],aj[0][$externalize(ak[0],$String)]);};})(ah,ai,aj,ak),(function(ah,ai,aj,ak){return function(av){var $ptr,av;aj[0][$externalize(ak[0],$String)]=AZ(ai[0],av);};})(ah,ai,aj,ak)),ap);case 14:av=P(ai[0],AY(ai[0],aj[0][$externalize(ak[0],$String)]),ap);$s=15;case 15:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=16;case 16:return av;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Field=function(ag){return this.$val.Field(ag);};BA=function(ag){var $ptr,ag,ah,ai,aj,ak,al;while(true){if(!(!(ag===""))){break;}ah=0;while(true){if(!(ah>0;}ag=ag.substring(ah);if(ag===""){break;}ah=0;while(true){if(!(ah>0;}if((ah+1>>0)>=ag.length||!((ag.charCodeAt(ah)===58))||!((ag.charCodeAt((ah+1>>0))===34))){break;}ai=ag.substring(0,ah);ag=ag.substring((ah+1>>0));ah=1;while(true){if(!(ah>0;}ah=ah+(1)>>0;}if(ah>=ag.length){break;}aj=ag.substring(0,(ah+1>>0));ag=ag.substring((ah+1>>0));if(ai==="js"){ak=B.Unquote(aj);al=ak[0];return al;}}return"";};DI.ptr.prototype.Index=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=[ah];ai=[ai];aj=[aj];ak=[ak];al=[al];am=this;an=new DJ(am.flag).kind();ao=an;if(ao===17){$s=1;continue;}if(ao===23){$s=2;continue;}if(ao===24){$s=3;continue;}$s=4;continue;case 1:ap=am.typ.kindType;if(ag[0]<0||ag[0]>(ap.len>>0)){$panic(new $String("reflect: array index out of range"));}ah[0]=ap.elem;aq=(am.flag&224)>>>0;aq=(aq|((ah[0].Kind()>>>0)))>>>0;ai[0]=am.ptr;if(!((((aq&64)>>>0)===0))&&!((ah[0].Kind()===17))&&!((ah[0].Kind()===25))){$s=6;continue;}$s=7;continue;case 6:return new DI.ptr(ah[0],new(I(CJ(ah[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(ah[0],ai[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(ar){var $ptr,ar;ai[0][ag[0]]=AZ(ah[0],ar);};})(ag,ah,ai,aj,ak,al)),aq);case 7:ar=P(ah[0],AY(ah[0],ai[0][ag[0]]),aq);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;case 2:as=am.object();if(ag[0]<0||ag[0]>=($parseInt(as.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}at=am.typ.kindType;aj[0]=at.elem;au=(192|((am.flag&32)>>>0))>>>0;au=(au|((aj[0].Kind()>>>0)))>>>0;ag[0]=ag[0]+(($parseInt(as.$offset)>>0))>>0;ak[0]=as.$array;if(!((((au&64)>>>0)===0))&&!((aj[0].Kind()===17))&&!((aj[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:return new DI.ptr(aj[0],new(I(CJ(aj[0])))((function(ag,ah,ai,aj,ak,al){return function(){var $ptr;return AY(aj[0],ak[0][ag[0]]);};})(ag,ah,ai,aj,ak,al),(function(ag,ah,ai,aj,ak,al){return function(av){var $ptr,av;ak[0][ag[0]]=AZ(aj[0],av);};})(ag,ah,ai,aj,ak,al)),au);case 11:av=P(aj[0],AY(aj[0],ak[0][ag[0]]),au);$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}$s=13;case 13:return av;case 3:aw=am.ptr.$get();if(ag[0]<0||ag[0]>=aw.length){$panic(new $String("reflect: string index out of range"));}ax=(((am.flag&32)>>>0)|8)>>>0;al[0]=aw.charCodeAt(ag[0]);return new DI.ptr(DV,(al.$ptr||(al.$ptr=new GN(function(){return this.$target[0];},function($v){this.$target[0]=$v;},al))),(ax|64)>>>0);case 4:$panic(new DM.ptr("reflect.Value.Index",an));case 5:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Index};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Index=function(ag){return this.$val.Index(ag);};DI.ptr.prototype.InterfaceData=function(){var $ptr,ag;ag=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};DI.prototype.InterfaceData=function(){return this.$val.InterfaceData();};DI.ptr.prototype.IsNil=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===22||ai===23){return ag.object()===I(ag.typ).nil;}else if(ai===18){return ag.object()===$chanNil;}else if(ai===19){return ag.object()===$throwNilPointerError;}else if(ai===21){return ag.object()===false;}else if(ai===20){return ag.object()===$ifaceNil;}else{$panic(new DM.ptr("reflect.Value.IsNil",ah));}};DI.prototype.IsNil=function(){return this.$val.IsNil();};DI.ptr.prototype.Len=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===17||ai===24){return $parseInt(ag.object().length);}else if(ai===23){return $parseInt(ag.object().$length)>>0;}else if(ai===18){return $parseInt(ag.object().$buffer.length)>>0;}else if(ai===21){return $parseInt($keys(ag.object()).length);}else{$panic(new DM.ptr("reflect.Value.Len",ah));}};DI.prototype.Len=function(){return this.$val.Len();};DI.ptr.prototype.Pointer=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===18||ai===21||ai===22||ai===26){if(ag.IsNil()){return 0;}return ag.object();}else if(ai===19){if(ag.IsNil()){return 0;}return 1;}else if(ai===23){if(ag.IsNil()){return 0;}return ag.object().$array;}else{$panic(new DM.ptr("reflect.Value.Pointer",ah));}};DI.prototype.Pointer=function(){return this.$val.Pointer();};DI.ptr.prototype.Set=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ag.flag).mustBeExported();ai=ag.assignTo("reflect.Set",ah.typ,0);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;if(!((((ah.flag&64)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:aj=ah.typ.Kind();if(aj===17){$s=4;continue;}if(aj===20){$s=5;continue;}if(aj===25){$s=6;continue;}$s=7;continue;case 4:I(ah.typ).copy(ah.ptr,ag.ptr);$s=8;continue;case 5:ak=AS(ag,false);$s=9;case 9:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ah.ptr.$set(ak);$s=8;continue;case 6:O(ah.ptr,ag.ptr,ah.typ);$s=8;continue;case 7:ah.ptr.$set(ag.object());case 8:return;case 3:ah.ptr=ag.ptr;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Set};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Set=function(ag){return this.$val.Set(ag);};DI.ptr.prototype.SetCap=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<($parseInt(ai.$length)>>0)||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ai.$length;aj.$capacity=ag;ah.ptr.$set(aj);};DI.prototype.SetCap=function(ag){return this.$val.SetCap(ag);};DI.ptr.prototype.SetLen=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.ptr.$get();if(ag<0||ag>($parseInt(ai.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}aj=new(I(ah.typ))(ai.$array);aj.$offset=ai.$offset;aj.$length=ag;aj.$capacity=ai.$capacity;ah.ptr.$set(aj);};DI.prototype.SetLen=function(ag){return this.$val.SetLen(ag);};DI.ptr.prototype.Slice=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=this;aj=0;ak=$ifaceNil;al=null;am=new DJ(ai.flag).kind();an=am;if(an===17){$s=1;continue;}if(an===23){$s=2;continue;}if(an===24){$s=3;continue;}$s=4;continue;case 1:if(((ai.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ao=ai.typ.kindType;aj=(ao.len>>0);ak=X(ao.elem);al=new(I(ak))(ai.object());$s=5;continue;case 2:ak=ai.typ;al=ai.object();aj=$parseInt(al.$capacity)>>0;$s=5;continue;case 3:ap=ai.ptr.$get();if(ag<0||ahap.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aq=S(new $String(ap.substring(ag,ah)));$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=7;case 7:return aq;case 4:$panic(new DM.ptr("reflect.Value.Slice",am));case 5:if(ag<0||ahaj){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ar=P(ak,$subslice(al,ag,ah),(ai.flag&32)>>>0);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=9;case 9:return ar;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice=function(ag,ah){return this.$val.Slice(ag,ah);};DI.ptr.prototype.Slice3=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;ak=0;al=$ifaceNil;am=null;an=new DJ(aj.flag).kind();ao=an;if(ao===17){if(((aj.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}ap=aj.typ.kindType;ak=(ap.len>>0);al=X(ap.elem);am=new(I(al))(aj.object());}else if(ao===23){al=aj.typ;am=aj.object();ak=$parseInt(am.$capacity)>>0;}else{$panic(new DM.ptr("reflect.Value.Slice3",an));}if(ag<0||ahak){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aq=P(al,$subslice(am,ag,ah,ai),(aj.flag&32)>>>0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=2;case 2:return aq;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Slice3};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Slice3=function(ag,ah,ai){return this.$val.Slice3(ag,ah,ai);};DI.ptr.prototype.Close=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(18);new DJ(ag.flag).mustBeExported();$close(ag.object());};DI.prototype.Close=function(){return this.$val.Close();};BC=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=false;al=false;am=new HA([new GI([new $jsObjectPtr(ah)])]);if(ai){am=$append(am,new GI([]));}an=BB(new GI([am]));$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ao=an;if(ai&&(($parseInt(ao[0])>>0)===1)){ap=false;aq=false;ak=ap;al=aq;return[ak,al];}ar=ao[1];aj.$set(ar[0]);as=true;at=!!(ar[1]);ak=as;al=at;return[ak,al];}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};BD=function(ag,ah,ai,aj){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ak=new HA([new GI([new $jsObjectPtr(ah),new $jsObjectPtr(ai.$get())])]);if(aj){ak=$append(ak,new GI([]));}al=BB(new GI([ak]));$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(aj&&(($parseInt(am[0])>>0)===1)){return false;}return true;}return;}if($f===undefined){$f={$blk:BD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};BN.prototype.String=function(){var $ptr,ag;ag=this.$val;if((ag>>0)=CE.$length)?$throwRuntimeError("index out of range"):CE.$array[CE.$offset+ag]);}return"kind"+B.Itoa((ag>>0));};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BR.ptr.prototype.uncommon=function(){var $ptr,ag;ag=this;return ag;};BR.prototype.uncommon=function(){return this.$val.uncommon();};BR.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.pkgPath===GO.nil){return"";}return ag.pkgPath.$get();};BR.prototype.PkgPath=function(){return this.$val.PkgPath();};BR.ptr.prototype.Name=function(){var $ptr,ag;ag=this;if(ag===GP.nil||ag.name===GO.nil){return"";}return ag.name.$get();};BR.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.String=function(){var $ptr,ag;ag=this;return ag.string.$get();};BO.prototype.String=function(){return this.$val.String();};BO.ptr.prototype.Size=function(){var $ptr,ag;ag=this;return ag.size;};BO.prototype.Size=function(){return this.$val.Size();};BO.ptr.prototype.Bits=function(){var $ptr,ag,ah;ag=this;if(ag===FW.nil){$panic(new $String("reflect: Bits of nil Type"));}ah=ag.Kind();if(ah<2||ah>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ag.String()));}return $imul((ag.size>>0),8);};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.Align=function(){var $ptr,ag;ag=this;return(ag.align>>0);};BO.prototype.Align=function(){return this.$val.Align();};BO.ptr.prototype.FieldAlign=function(){var $ptr,ag;ag=this;return(ag.fieldAlign>>0);};BO.prototype.FieldAlign=function(){return this.$val.FieldAlign();};BO.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return(((ag.kind&31)>>>0)>>>0);};BO.prototype.Kind=function(){return this.$val.Kind();};BO.ptr.prototype.common=function(){var $ptr,ag;ag=this;return ag;};BO.prototype.common=function(){return this.$val.common();};BR.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag===GP.nil){return 0;}return ag.methods.$length;};BR.prototype.NumMethod=function(){return this.$val.NumMethod();};BR.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===GP.nil){return[ah,ai];}ak=HD.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(!(ak.name===GO.nil)&&ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BR.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.NumMethod=function(){var $ptr,ag,ah;ag=this;if(ag.Kind()===20){ah=ag.kindType;return ah.NumMethod();}return ag.uncommonType.NumMethod();};BO.prototype.NumMethod=function(){return this.$val.NumMethod();};BO.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ai.Kind()===20){aj=ai.kindType;CD.copy(ah,aj.Method(ag));return ah;}CD.copy(ah,ai.uncommonType.Method(ag));return ah;};BO.prototype.Method=function(ag){return this.$val.Method(ag);};BO.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj.Kind()===20){ak=aj.kindType;al=ak.MethodByName(ag);CD.copy(ah,al[0]);ai=al[1];return[ah,ai];}am=aj.uncommonType.MethodByName(ag);CD.copy(ah,am[0]);ai=am[1];return[ah,ai];};BO.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};BO.ptr.prototype.PkgPath=function(){var $ptr,ag;ag=this;return ag.uncommonType.PkgPath();};BO.prototype.PkgPath=function(){return this.$val.PkgPath();};BO.ptr.prototype.Name=function(){var $ptr,ag;ag=this;return ag.uncommonType.Name();};BO.prototype.Name=function(){return this.$val.Name();};BO.ptr.prototype.ChanDir=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}ah=ag.kindType;return(ah.dir>>0);};BO.prototype.ChanDir=function(){return this.$val.ChanDir();};BO.ptr.prototype.IsVariadic=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}ah=ag.kindType;return ah.dotdotdot;};BO.prototype.IsVariadic=function(){return this.$val.IsVariadic();};BO.ptr.prototype.Elem=function(){var $ptr,ag,ah,ai,aj,ak,al,am;ag=this;ah=ag.Kind();if(ah===17){ai=ag.kindType;return DA(ai.elem);}else if(ah===18){aj=ag.kindType;return DA(aj.elem);}else if(ah===21){ak=ag.kindType;return DA(ak.elem);}else if(ah===22){al=ag.kindType;return DA(al.elem);}else if(ah===23){am=ag.kindType;return DA(am.elem);}$panic(new $String("reflect: Elem of invalid type"));};BO.prototype.Elem=function(){return this.$val.Elem();};BO.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ai=ah.kindType;aj=ai.Field(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Field};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Field=function(ag){return this.$val.Field(ag);};BO.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ai=ah.kindType;aj=ai.FieldByIndex(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};BO.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ai=ah.kindType;aj=ai.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};BO.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((ah.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ai=ah.kindType;aj=ai.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};BO.ptr.prototype.In=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ai=ah.kindType;return DA((aj=ai.in$2,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.In=function(ag){return this.$val.In(ag);};BO.ptr.prototype.Key=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}ah=ag.kindType;return DA(ah.key);};BO.prototype.Key=function(){return this.$val.Key();};BO.ptr.prototype.Len=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}ah=ag.kindType;return(ah.len>>0);};BO.prototype.Len=function(){return this.$val.Len();};BO.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}ah=ag.kindType;return ah.fields.$length;};BO.prototype.NumField=function(){return this.$val.NumField();};BO.ptr.prototype.NumIn=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}ah=ag.kindType;return ah.in$2.$length;};BO.prototype.NumIn=function(){return this.$val.NumIn();};BO.ptr.prototype.NumOut=function(){var $ptr,ag,ah;ag=this;if(!((ag.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}ah=ag.kindType;return ah.out.$length;};BO.prototype.NumOut=function(){return this.$val.NumOut();};BO.ptr.prototype.Out=function(ag){var $ptr,ag,ah,ai,aj;ah=this;if(!((ah.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ai=ah.kindType;return DA((aj=ai.out,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag])));};BO.prototype.Out=function(ag){return this.$val.Out(ag);};BS.prototype.String=function(){var $ptr,ag,ah;ag=this.$val;ah=ag;if(ah===2){return"chan<-";}else if(ah===1){return"<-chan";}else if(ah===3){return"chan";}return"ChanDir"+B.Itoa((ag>>0));};$ptrType(BS).prototype.String=function(){return new BS(this.$get()).String();};BX.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=this;if(ag<0||ag>=ai.methods.$length){return ah;}ak=(aj=ai.methods,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Name=ak.name.$get();if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}ah.Type=DA(ak.typ);ah.Index=ag;return ah;};BX.prototype.Method=function(ag){return this.$val.Method(ag);};BX.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;return ag.methods.$length;};BX.prototype.NumMethod=function(){return this.$val.NumMethod();};BX.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq;ah=new CD.ptr("","",$ifaceNil,new DI.ptr(FW.nil,0,0),0);ai=false;aj=this;if(aj===HE.nil){return[ah,ai];}ak=HF.nil;al=aj.methods;am=0;while(true){if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ak.name.$get()===ag){ap=$clone(aj.Method(an),CD);aq=true;CD.copy(ah,ap);ai=aq;return[ah,ai];}am++;}return[ah,ai];};BX.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};CG.prototype.Get=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an;ah=this.$val;while(true){if(!(!(ah===""))){break;}ai=0;while(true){if(!(ai>0;}ah=ah.substring(ai);if(ah===""){break;}ai=0;while(true){if(!(ai32&&!((ah.charCodeAt(ai)===58))&&!((ah.charCodeAt(ai)===34))&&!((ah.charCodeAt(ai)===127)))){break;}ai=ai+(1)>>0;}if((ai===0)||(ai+1>>0)>=ah.length||!((ah.charCodeAt(ai)===58))||!((ah.charCodeAt((ai+1>>0))===34))){break;}aj=ah.substring(0,ai);ah=ah.substring((ai+1>>0));ai=1;while(true){if(!(ai>0;}ai=ai+(1)>>0;}if(ai>=ah.length){break;}ak=ah.substring(0,(ai+1>>0));ah=ah.substring((ai+1>>0));if(ag===aj){al=B.Unquote(ak);am=al[0];an=al[1];if(!($interfaceIsEqual(an,$ifaceNil))){break;}return am;}}return"";};$ptrType(CG).prototype.Get=function(ag){return new CG(this.$get()).Get(ag);};CC.ptr.prototype.Field=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;if(ag<0||ag>=ai.fields.$length){return ah;}ak=(aj=ai.fields,((ag<0||ag>=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ag]));ah.Type=DA(ak.typ);if(!(ak.name===GO.nil)){$s=1;continue;}$s=2;continue;case 1:ah.Name=ak.name.$get();$s=3;continue;case 2:al=ah.Type;am=al.Kind();$s=6;case 6:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}if(am===22){$s=4;continue;}$s=5;continue;case 4:an=al.Elem();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}al=an;case 5:ao=al.Name();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ah.Name=ao;ah.Anonymous=true;case 3:if(!(ak.pkgPath===GO.nil)){ah.PkgPath=ak.pkgPath.$get();}if(!(ak.tag===GO.nil)){ah.Tag=ak.tag.$get();}ah.Offset=ak.offset;ah.Index=new HG([ag]);return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.Field};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.Field=function(ag){return this.$val.Field(ag);};CC.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=this;ah.Type=DA(ai.rtype);aj=ag;ak=0;case 1:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=3;continue;}$s=4;continue;case 3:an=ah.Type;ap=an.Kind();$s=8;case 8:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!(ap===22)){ao=false;$s=7;continue s;}aq=an.Elem();$s=9;case 9:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Kind();$s=10;case 10:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=ar===25;case 7:if(ao){$s=5;continue;}$s=6;continue;case 5:as=an.Elem();$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;case 6:ah.Type=an;case 4:at=ah.Type.Field(am);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}CF.copy(ah,at);ak++;$s=1;continue;case 2:return ah;}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};CC.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,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,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=new HH([]);al=new HH([new CH.ptr(aj,HG.nil)]);am=false;an=$makeMap(HI.keyFor,[]);case 1:if(!(al.$length>0)){$s=2;continue;}ao=al;ap=$subslice(ak,0,0);ak=ao;al=ap;aq=am;am=false;ar=ak;as=0;case 3:if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]),CH);au=at.typ;if((av=an[HI.keyFor(au)],av!==undefined?av.v:false)){$s=5;continue;}$s=6;continue;case 5:as++;$s=3;continue;case 6:aw=au;(an||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(aw)]={k:aw,v:true};ax=au.fields;ay=0;case 7:if(!(ay=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+az]));bc="";bd=FW.nil;if(!(bb.name===GO.nil)){$s=9;continue;}$s=10;continue;case 9:bc=bb.name.$get();$s=11;continue;case 10:bd=bb.typ;if(bd.Kind()===22){$s=12;continue;}$s=13;continue;case 12:be=bd.Elem().common();$s=14;case 14:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bd=be;case 13:bc=bd.Name();case 11:bf=ag(bc);$s=17;case 17:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}if(bf){$s=15;continue;}$s=16;continue;case 15:if((bg=aq[HI.keyFor(au)],bg!==undefined?bg.v:0)>1||ai){bh=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);bi=false;CF.copy(ah,bh);ai=bi;return[ah,ai];}bj=au.Field(az);$s=18;case 18:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}CF.copy(ah,bj);ah.Index=HG.nil;ah.Index=$appendSlice(ah.Index,at.index);ah.Index=$append(ah.Index,az);ai=true;ay++;$s=7;continue;case 16:if(ai||bd===FW.nil||!((bd.Kind()===25))){ay++;$s=7;continue;}bk=bd.kindType;if((bl=am[HI.keyFor(bk)],bl!==undefined?bl.v:0)>0){bm=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bm)]={k:bm,v:2};ay++;$s=7;continue;}if(am===false){am=$makeMap(HI.keyFor,[]);}bn=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bn)]={k:bn,v:1};if((bo=aq[HI.keyFor(au)],bo!==undefined?bo.v:0)>1){bp=bk;(am||$throwRuntimeError("assignment to entry in nil map"))[HI.keyFor(bp)]={k:bp,v:2};}bq=HG.nil;bq=$appendSlice(bq,at.index);bq=$append(bq,az);al=$append(al,new CH.ptr(bk,bq));ay++;$s=7;continue;case 8:as++;$s=3;continue;case 4:if(ai){$s=2;continue;}$s=1;continue;case 2:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};CC.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=[ag];ah=new CF.ptr("","",$ifaceNil,"",0,HG.nil,false);ai=false;aj=this;ak=false;if(!(ag[0]==="")){$s=1;continue;}$s=2;continue;case 1:al=aj.fields;am=0;case 3:if(!(am=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));if(ap.name===GO.nil){$s=5;continue;}$s=6;continue;case 5:ak=true;am++;$s=3;continue;case 6:if(ap.name.$get()===ag[0]){$s=7;continue;}$s=8;continue;case 7:ar=aj.Field(an);$s=9;case 9:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=$clone(ar,CF);as=true;CF.copy(ah,aq);ai=as;$s=10;case 10:return[ah,ai];case 8:am++;$s=3;continue;case 4:case 2:if(!ak){return[ah,ai];}au=aj.FieldByNameFunc((function(ag){return function(au){var $ptr,au;return au===ag[0];};})(ag));$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;CF.copy(ah,at[0]);ai=at[1];$s=12;case 12:return[ah,ai];}return;}if($f===undefined){$f={$blk:CC.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};CC.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};CJ=function(ag){var $ptr,ag;return $assertType(ag,FW).ptrTo();};$pkg.PtrTo=CJ;BO.ptr.prototype.Implements=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ai=ag.Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:return CL($assertType(ag,FW),ah);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Implements=function(ag){return this.$val.Implements(ag);};BO.ptr.prototype.AssignableTo=function(ag){var $ptr,ag,ah,ai;ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ai=$assertType(ag,FW);return CM(ai,ah)||CL(ai,ah);};BO.prototype.AssignableTo=function(ag){return this.$val.AssignableTo(ag);};BO.ptr.prototype.ConvertibleTo=function(ag){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ai=$assertType(ag,FW);aj=ER(ai,ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return!(aj===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ConvertibleTo=function(ag){return this.$val.ConvertibleTo(ag);};CL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw;if(!((ag.Kind()===20))){return false;}ai=ag.kindType;if(ai.methods.$length===0){return true;}if(ah.Kind()===20){aj=ah.kindType;ak=0;al=0;while(true){if(!(al=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+ak]));ap=(ao=aj.methods,((al<0||al>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+al]));if(ap.name.$get()===an.name.$get()&&ap.pkgPath===an.pkgPath&&ap.typ===an.typ){ak=ak+(1)>>0;if(ak>=ai.methods.$length){return true;}}al=al+(1)>>0;}return false;}aq=ah.uncommonType.uncommon();if(aq===GP.nil){return false;}ar=0;as=0;while(true){if(!(as=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+ar]));aw=(av=aq.methods,((as<0||as>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+as]));if(aw.name.$get()===au.name.$get()&&aw.pkgPath===au.pkgPath&&aw.mtyp===au.typ){ar=ar+(1)>>0;if(ar>=ai.methods.$length){return true;}}as=as+(1)>>0;}return false;};CM=function(ag,ah){var $ptr,ag,ah;if(ag===ah){return true;}if(!(ag.Name()==="")&&!(ah.Name()==="")||!((ag.Kind()===ah.Kind()))){return false;}return CN(ag,ah);};CN=function(ag,ah){var $ptr,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;if(ag===ah){return true;}ai=ag.Kind();if(!((ai===ah.Kind()))){return false;}if(1<=ai&&ai<=16||(ai===24)||(ai===26)){return true;}aj=ai;if(aj===17){return $interfaceIsEqual(ag.Elem(),ah.Elem())&&(ag.Len()===ah.Len());}else if(aj===18){if((ah.ChanDir()===3)&&$interfaceIsEqual(ag.Elem(),ah.Elem())){return true;}return(ah.ChanDir()===ag.ChanDir())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===19){ak=ag.kindType;al=ah.kindType;if(!(ak.dotdotdot===al.dotdotdot)||!((ak.in$2.$length===al.in$2.$length))||!((ak.out.$length===al.out.$length))){return false;}am=ak.in$2;an=0;while(true){if(!(an=am.$length)?$throwRuntimeError("index out of range"):am.$array[am.$offset+an]);if(!(ap===(aq=al.in$2,((ao<0||ao>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ao])))){return false;}an++;}ar=ak.out;as=0;while(true){if(!(as=ar.$length)?$throwRuntimeError("index out of range"):ar.$array[ar.$offset+as]);if(!(au===(av=al.out,((at<0||at>=av.$length)?$throwRuntimeError("index out of range"):av.$array[av.$offset+at])))){return false;}as++;}return true;}else if(aj===20){aw=ag.kindType;ax=ah.kindType;if((aw.methods.$length===0)&&(ax.methods.$length===0)){return true;}return false;}else if(aj===21){return $interfaceIsEqual(ag.Key(),ah.Key())&&$interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===22||aj===23){return $interfaceIsEqual(ag.Elem(),ah.Elem());}else if(aj===25){ay=ag.kindType;az=ah.kindType;if(!((ay.fields.$length===az.fields.$length))){return false;}ba=ay.fields;bb=0;while(true){if(!(bb=bd.$length)?$throwRuntimeError("index out of range"):bd.$array[bd.$offset+bc]));bg=(bf=az.fields,((bc<0||bc>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bc]));if(!(be.name===bg.name)&&(be.name===GO.nil||bg.name===GO.nil||!(be.name.$get()===bg.name.$get()))){return false;}if(!(be.pkgPath===bg.pkgPath)&&(be.pkgPath===GO.nil||bg.pkgPath===GO.nil||!(be.pkgPath.$get()===bg.pkgPath.$get()))){return false;}if(!(be.typ===bg.typ)){return false;}if(!(be.tag===bg.tag)&&(be.tag===GO.nil||bg.tag===GO.nil||!(be.tag.$get()===bg.tag.$get()))){return false;}if(!((be.offset===bg.offset))){return false;}bb++;}return true;}return false;};DA=function(ag){var $ptr,ag;if(ag===FW.nil){return $ifaceNil;}return ag;};DF=function(ag){var $ptr,ag;return((ag.kind&32)>>>0)===0;};DJ.prototype.kind=function(){var $ptr,ag;ag=this.$val;return(((ag&31)>>>0)>>>0);};$ptrType(DJ).prototype.kind=function(){return new DJ(this.$get()).kind();};DI.ptr.prototype.pointer=function(){var $ptr,ag;ag=this;if(!((ag.typ.size===4))||!ag.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ag.flag&64)>>>0)===0))){return ag.ptr.$get();}return ag.ptr;};DI.prototype.pointer=function(){return this.$val.pointer();};DM.ptr.prototype.Error=function(){var $ptr,ag;ag=this;if(ag.Kind===0){return"reflect: call of "+ag.Method+" on zero Value";}return"reflect: call of "+ag.Method+" on "+new BN(ag.Kind).String()+" Value";};DM.prototype.Error=function(){return this.$val.Error();};DJ.prototype.mustBe=function(ag){var $ptr,ag,ah;ah=this.$val;if(!((new DJ(ah).kind()===ag))){$panic(new DM.ptr(AU(),new DJ(ah).kind()));}};$ptrType(DJ).prototype.mustBe=function(ag){return new DJ(this.$get()).mustBe(ag);};DJ.prototype.mustBeExported=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}};$ptrType(DJ).prototype.mustBeExported=function(){return new DJ(this.$get()).mustBeExported();};DJ.prototype.mustBeAssignable=function(){var $ptr,ag;ag=this.$val;if(ag===0){$panic(new DM.ptr(AU(),0));}if(!((((ag&32)>>>0)===0))){$panic(new $String("reflect: "+AU()+" using value obtained using unexported field"));}if(((ag&128)>>>0)===0){$panic(new $String("reflect: "+AU()+" using unaddressable value"));}};$ptrType(DJ).prototype.mustBeAssignable=function(){return new DJ(this.$get()).mustBeAssignable();};DI.ptr.prototype.Addr=function(){var $ptr,ag;ag=this;if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new DI.ptr(ag.typ.ptrTo(),ag.ptr,((((ag.flag&32)>>>0))|22)>>>0);};DI.prototype.Addr=function(){return this.$val.Addr();};DI.ptr.prototype.Bool=function(){var $ptr,ag;ag=this;new DJ(ag.flag).mustBe(1);return ag.ptr.$get();};DI.prototype.Bool=function(){return this.$val.Bool();};DI.ptr.prototype.Bytes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Bytes=function(){return this.$val.Bytes();};DI.ptr.prototype.runes=function(){var $ptr,ag,ah,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(23);ah=ag.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}if(!((ah===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:return ag.ptr.$get();}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.runes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.runes=function(){return this.$val.runes();};DI.ptr.prototype.CanAddr=function(){var $ptr,ag;ag=this;return!((((ag.flag&128)>>>0)===0));};DI.prototype.CanAddr=function(){return this.$val.CanAddr();};DI.ptr.prototype.CanSet=function(){var $ptr,ag;ag=this;return((ag.flag&160)>>>0)===128;};DI.prototype.CanSet=function(){return this.$val.CanSet();};DI.ptr.prototype.Call=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("Call",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Call};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Call=function(ag){return this.$val.Call(ag);};DI.ptr.prototype.CallSlice=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(19);new DJ(ah.flag).mustBeExported();ai=ah.call("CallSlice",ag);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.CallSlice=function(ag){return this.$val.CallSlice(ag);};DI.ptr.prototype.Complex=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===15){return(aj=ag.ptr.$get(),new $Complex128(aj.$real,aj.$imag));}else if(ai===16){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Complex",new DJ(ag.flag).kind()));};DI.prototype.Complex=function(){return this.$val.Complex();};DI.ptr.prototype.FieldByIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(ag.$length===1){$s=1;continue;}$s=2;continue;case 1:ai=ah.Field((0>=ag.$length?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+0]));$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=4;case 4:return ai;case 2:new DJ(ah.flag).mustBe(25);aj=ag;ak=0;case 5:if(!(ak=aj.$length)?$throwRuntimeError("index out of range"):aj.$array[aj.$offset+ak]);if(al>0){$s=7;continue;}$s=8;continue;case 7:if(!(ah.Kind()===22)){an=false;$s=11;continue s;}ao=ah.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao===25;case 11:if(an){$s=9;continue;}$s=10;continue;case 9:if(ah.IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}ap=ah.Elem();$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ah=ap;case 10:case 8:aq=ah.Field(am);$s=14;case 14:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ah=aq;ak++;$s=5;continue;case 6:return ah;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByIndex=function(ag){return this.$val.FieldByIndex(ag);};DI.ptr.prototype.FieldByName=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBe(25);aj=ah.typ.FieldByName(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByName=function(ag){return this.$val.FieldByName(ag);};DI.ptr.prototype.FieldByNameFunc=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;aj=ah.typ.FieldByNameFunc(ag);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=$clone(ai[0],CF);al=ai[1];if(al){$s=2;continue;}$s=3;continue;case 2:am=ah.FieldByIndex(ak.Index);$s=4;case 4:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=5;case 5:return am;case 3:return new DI.ptr(FW.nil,0,0);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.FieldByNameFunc=function(ag){return this.$val.FieldByNameFunc(ag);};DI.ptr.prototype.Float=function(){var $ptr,ag,ah,ai;ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===13){return ag.ptr.$get();}else if(ai===14){return ag.ptr.$get();}$panic(new DM.ptr("reflect.Value.Float",new DJ(ag.flag).kind()));};DI.prototype.Float=function(){return this.$val.Float();};DI.ptr.prototype.Int=function(){var $ptr,ag,ah,ai,aj;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===2){return new $Int64(0,ai.$get());}else if(aj===3){return new $Int64(0,ai.$get());}else if(aj===4){return new $Int64(0,ai.$get());}else if(aj===5){return new $Int64(0,ai.$get());}else if(aj===6){return ai.$get();}$panic(new DM.ptr("reflect.Value.Int",new DJ(ag.flag).kind()));};DI.prototype.Int=function(){return this.$val.Int();};DI.ptr.prototype.CanInterface=function(){var $ptr,ag;ag=this;if(ag.flag===0){$panic(new DM.ptr("reflect.Value.CanInterface",0));}return((ag.flag&32)>>>0)===0;};DI.prototype.CanInterface=function(){return this.$val.CanInterface();};DI.ptr.prototype.Interface=function(){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=$ifaceNil;ah=this;ai=AS(ah,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ag=ai;$s=2;case 2:return ag;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Interface=function(){return this.$val.Interface();};DI.ptr.prototype.IsValid=function(){var $ptr,ag;ag=this;return!((ag.flag===0));};DI.prototype.IsValid=function(){return this.$val.IsValid();};DI.ptr.prototype.Kind=function(){var $ptr,ag;ag=this;return new DJ(ag.flag).kind();};DI.prototype.Kind=function(){return this.$val.Kind();};DI.ptr.prototype.MapIndex=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(21);ai=ah.typ.kindType;aj=ag.assignTo("reflect.Value.MapIndex",ai.key,0);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ag=aj;ak=0;if(!((((ag.flag&64)>>>0)===0))){ak=ag.ptr;}else{ak=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}al=AH(ah.typ,ah.pointer(),ak);if(al===0){return new DI.ptr(FW.nil,0,0);}am=ai.elem;an=((((ah.flag|ag.flag)>>>0))&32)>>>0;an=(an|((am.Kind()>>>0)))>>>0;if(DF(am)){ao=Z(am);AC(am,ao,al);return new DI.ptr(am,ao,(an|64)>>>0);}else{return new DI.ptr(am,al.$get(),an);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapIndex=function(ag){return this.$val.MapIndex(ag);};DI.ptr.prototype.MapKeys=function(){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;new DJ(ag.flag).mustBe(21);ah=ag.typ.kindType;ai=ah.key;aj=(((ag.flag&32)>>>0)|(ai.Kind()>>>0))>>>0;ak=ag.pointer();al=0;if(!(ak===0)){al=AO(ak);}am=AL(ag.typ,ak);an=$makeSlice(GV,al);ao=0;ao=0;case 1:if(!(ao=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,ar,(aj|64)>>>0));}else{((ao<0||ao>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ao]=new DI.ptr(ai,aq.$get(),aj));}AN(am);ao=ao+(1)>>0;$s=1;continue;case 2:return $subslice(an,0,ao);}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.MapKeys=function(){return this.$val.MapKeys();};DI.ptr.prototype.Method=function(ag){var $ptr,ag,ah,ai;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.Method",0));}if(!((((ah.flag&256)>>>0)===0))||(ag>>>0)>=(ah.typ.NumMethod()>>>0)){$panic(new $String("reflect: Method index out of range"));}if((ah.typ.Kind()===20)&&ah.IsNil()){$panic(new $String("reflect: Method on nil interface value"));}ai=(ah.flag&96)>>>0;ai=(ai|(19))>>>0;ai=(ai|(((((ag>>>0)<<9>>>0)|256)>>>0)))>>>0;return new DI.ptr(ah.typ,ah.ptr,ai);};DI.prototype.Method=function(ag){return this.$val.Method(ag);};DI.ptr.prototype.NumMethod=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.NumMethod",0));}if(!((((ag.flag&256)>>>0)===0))){return 0;}return ag.typ.NumMethod();};DI.prototype.NumMethod=function(){return this.$val.NumMethod();};DI.ptr.prototype.MethodByName=function(ag){var $ptr,ag,ah,ai,aj,ak;ah=this;if(ah.typ===FW.nil){$panic(new DM.ptr("reflect.Value.MethodByName",0));}if(!((((ah.flag&256)>>>0)===0))){return new DI.ptr(FW.nil,0,0);}ai=ah.typ.MethodByName(ag);aj=$clone(ai[0],CD);ak=ai[1];if(!ak){return new DI.ptr(FW.nil,0,0);}return ah.Method(aj.Index);};DI.prototype.MethodByName=function(ag){return this.$val.MethodByName(ag);};DI.ptr.prototype.NumField=function(){var $ptr,ag,ah;ag=this;new DJ(ag.flag).mustBe(25);ah=ag.typ.kindType;return ah.fields.$length;};DI.prototype.NumField=function(){return this.$val.NumField();};DI.ptr.prototype.OverflowComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){return DW(ag.$real)||DW(ag.$imag);}else if(aj===16){return false;}$panic(new DM.ptr("reflect.Value.OverflowComplex",new DJ(ah.flag).kind()));};DI.prototype.OverflowComplex=function(ag){return this.$val.OverflowComplex(ag);};DI.ptr.prototype.OverflowFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){return DW(ag);}else if(aj===14){return false;}$panic(new DM.ptr("reflect.Value.OverflowFloat",new DJ(ah.flag).kind()));};DI.prototype.OverflowFloat=function(ag){return this.$val.OverflowFloat(ag);};DW=function(ag){var $ptr,ag;if(ag<0){ag=-ag;}return 3.4028234663852886e+38>>0;al=$shiftRightInt64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowInt",new DJ(ah.flag).kind()));};DI.prototype.OverflowInt=function(ag){return this.$val.OverflowInt(ag);};DI.ptr.prototype.OverflowUint=function(ag){var $ptr,ag,ah,ai,aj,ak,al;ah=this;ai=new DJ(ah.flag).kind();aj=ai;if(aj===7||aj===12||aj===8||aj===9||aj===10||aj===11){ak=$imul(ah.typ.size,8)>>>0;al=$shiftRightUint64(($shiftLeft64(ag,((64-ak>>>0)))),((64-ak>>>0)));return!((ag.$high===al.$high&&ag.$low===al.$low));}$panic(new DM.ptr("reflect.Value.OverflowUint",new DJ(ah.flag).kind()));};DI.prototype.OverflowUint=function(ag){return this.$val.OverflowUint(ag);};DI.ptr.prototype.Recv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(false);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Recv=function(){return this.$val.Recv();};DI.ptr.prototype.recv=function(ag){var $ptr,ag,ah,ai,aj,ak,al,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=new DI.ptr(FW.nil,0,0);ai=false;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}al=ak.elem;ah=new DI.ptr(al,0,(al.Kind()>>>0));am=0;if(DF(al)){am=Z(al);ah.ptr=am;ah.flag=(ah.flag|(64))>>>0;}else{am=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}ao=BC(aj.typ,aj.pointer(),ag,am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;ap=an[0];ai=an[1];if(!ap){ah=new DI.ptr(FW.nil,0,0);}return[ah,ai];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.recv};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.recv=function(ag){return this.$val.recv(ag);};DI.ptr.prototype.Send=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,false);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Send};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Send=function(ag){return this.$val.Send(ag);};DI.ptr.prototype.send=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=false;ag=ag;aj=this;ak=aj.typ.kindType;if(((ak.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new DJ(ag.flag).mustBeExported();al=ag.assignTo("reflect.Value.Send",ak.elem,0);$s=1;case 1:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ag=al;am=0;if(!((((ag.flag&64)>>>0)===0))){am=ag.ptr;}else{am=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}an=BD(aj.typ,aj.pointer(),am,ah);$s=2;case 2:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}ai=an;$s=3;case 3:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.send};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.send=function(ag,ah){return this.$val.send(ag,ah);};DI.ptr.prototype.SetBool=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(1);ah.ptr.$set(ag);};DI.prototype.SetBool=function(ag){return this.$val.SetBool(ag);};DI.ptr.prototype.SetBytes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetBytes=function(ag){return this.$val.SetBytes(ag);};DI.ptr.prototype.setRunes=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(23);ai=ah.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!((ai===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:ah.ptr.$set(ag);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.setRunes=function(ag){return this.$val.setRunes(ag);};DI.ptr.prototype.SetComplex=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===15){ah.ptr.$set(new $Complex64(ag.$real,ag.$imag));}else if(aj===16){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetComplex",new DJ(ah.flag).kind()));}};DI.prototype.SetComplex=function(ag){return this.$val.SetComplex(ag);};DI.ptr.prototype.SetFloat=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===13){ah.ptr.$set($fround(ag));}else if(aj===14){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetFloat",new DJ(ah.flag).kind()));}};DI.prototype.SetFloat=function(ag){return this.$val.SetFloat(ag);};DI.ptr.prototype.SetInt=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===2){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===3){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<24>>24));}else if(aj===4){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))<<16>>16));}else if(aj===5){ah.ptr.$set(((ag.$low+((ag.$high>>31)*4294967296))>>0));}else if(aj===6){ah.ptr.$set(ag);}else{$panic(new DM.ptr("reflect.Value.SetInt",new DJ(ah.flag).kind()));}};DI.prototype.SetInt=function(ag){return this.$val.SetInt(ag);};DI.ptr.prototype.SetMapIndex=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=ah;ag=ag;ai=this;new DJ(ai.flag).mustBe(21);new DJ(ai.flag).mustBeExported();new DJ(ag.flag).mustBeExported();aj=ai.typ.kindType;ak=ag.assignTo("reflect.Value.SetMapIndex",aj.key,0);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ag=ak;al=0;if(!((((ag.flag&64)>>>0)===0))){al=ag.ptr;}else{al=(ag.$ptr_ptr||(ag.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ag)));}if(ah.typ===FW.nil){AJ(ai.typ,ai.pointer(),al);return;}new DJ(ah.flag).mustBeExported();am=ah.assignTo("reflect.Value.SetMapIndex",aj.elem,0);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}ah=am;an=0;if(!((((ah.flag&64)>>>0)===0))){an=ah.ptr;}else{an=(ah.$ptr_ptr||(ah.$ptr_ptr=new HO(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ah)));}$r=AI(ai.typ,ai.pointer(),al,an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.SetMapIndex=function(ag,ah){return this.$val.SetMapIndex(ag,ah);};DI.ptr.prototype.SetUint=function(ag){var $ptr,ag,ah,ai,aj;ah=this;new DJ(ah.flag).mustBeAssignable();ai=new DJ(ah.flag).kind();aj=ai;if(aj===7){ah.ptr.$set((ag.$low>>>0));}else if(aj===8){ah.ptr.$set((ag.$low<<24>>>24));}else if(aj===9){ah.ptr.$set((ag.$low<<16>>>16));}else if(aj===10){ah.ptr.$set((ag.$low>>>0));}else if(aj===11){ah.ptr.$set(ag);}else if(aj===12){ah.ptr.$set((ag.$low>>>0));}else{$panic(new DM.ptr("reflect.Value.SetUint",new DJ(ah.flag).kind()));}};DI.prototype.SetUint=function(ag){return this.$val.SetUint(ag);};DI.ptr.prototype.SetPointer=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(26);ah.ptr.$set(ag);};DI.prototype.SetPointer=function(ag){return this.$val.SetPointer(ag);};DI.ptr.prototype.SetString=function(ag){var $ptr,ag,ah;ah=this;new DJ(ah.flag).mustBeAssignable();new DJ(ah.flag).mustBe(24);ah.ptr.$set(ag);};DI.prototype.SetString=function(ag){return this.$val.SetString(ag);};DI.ptr.prototype.String=function(){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=this;ah=new DJ(ag.flag).kind();ai=ah;if(ai===0){return"";}else if(ai===24){return ag.ptr.$get();}aj=ag.Type().String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return"<"+aj+" Value>";}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.String};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.String=function(){return this.$val.String();};DI.ptr.prototype.TryRecv=function(){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=new DI.ptr(FW.nil,0,0);ah=false;ai=this;new DJ(ai.flag).mustBe(18);new DJ(ai.flag).mustBeExported();ak=ai.recv(true);$s=1;case 1:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ag=aj[0];ah=aj[1];$s=2;case 2:return[ag,ah];}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TryRecv=function(){return this.$val.TryRecv();};DI.ptr.prototype.TrySend=function(ag){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ah=this;new DJ(ah.flag).mustBe(18);new DJ(ah.flag).mustBeExported();ai=ah.send(ag,true);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.TrySend=function(ag){return this.$val.TrySend(ag);};DI.ptr.prototype.Type=function(){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao;ag=this;ah=ag.flag;if(ah===0){$panic(new DM.ptr("reflect.Value.Type",0));}if(((ah&256)>>>0)===0){return ag.typ;}ai=(ag.flag>>0)>>9>>0;if(ag.typ.Kind()===20){aj=ag.typ.kindType;if((ai>>>0)>=(aj.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}al=(ak=aj.methods,((ai<0||ai>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+ai]));return al.typ;}am=ag.typ.uncommonType.uncommon();if(am===GP.nil||(ai>>>0)>=(am.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ao=(an=am.methods,((ai<0||ai>=an.$length)?$throwRuntimeError("index out of range"):an.$array[an.$offset+ai]));return ao.mtyp;};DI.prototype.Type=function(){return this.$val.Type();};DI.ptr.prototype.Uint=function(){var $ptr,ag,ah,ai,aj,ak;ag=this;ah=new DJ(ag.flag).kind();ai=ag.ptr;aj=ah;if(aj===7){return new $Uint64(0,ai.$get());}else if(aj===8){return new $Uint64(0,ai.$get());}else if(aj===9){return new $Uint64(0,ai.$get());}else if(aj===10){return new $Uint64(0,ai.$get());}else if(aj===11){return ai.$get();}else if(aj===12){return(ak=ai.$get(),new $Uint64(0,ak.constructor===Number?ak:1));}$panic(new DM.ptr("reflect.Value.Uint",new DJ(ag.flag).kind()));};DI.prototype.Uint=function(){return this.$val.Uint();};DI.ptr.prototype.UnsafeAddr=function(){var $ptr,ag;ag=this;if(ag.typ===FW.nil){$panic(new DM.ptr("reflect.Value.UnsafeAddr",0));}if(((ag.flag&128)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return ag.ptr;};DI.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};EP=function(ag){var $ptr,ag,ah,ai,aj,ak,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(ag,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ah=Z($assertType(ag,FW));ai=22;aj=ag.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.ptrTo();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}$s=3;case 3:return new DI.ptr(ak,ah,ai);}return;}if($f===undefined){$f={$blk:EP};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=EP;DI.ptr.prototype.assignTo=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=this;if(!((((aj.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ak=AV(ag,aj);$s=3;case 3:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;case 2:if(CM(ah,aj.typ)){$s=4;continue;}if(CL(ah,aj.typ)){$s=5;continue;}$s=6;continue;case 4:aj.typ=ah;al=(aj.flag&224)>>>0;al=(al|((ah.Kind()>>>0)))>>>0;return new DI.ptr(ah,aj.ptr,al);case 5:if(ai===0){ai=Z(ah);}am=AS(aj,false);$s=7;case 7:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(ah.NumMethod()===0){ai.$set(an);}else{AT(ah,an,ai);}return new DI.ptr(ah,ai,84);case 6:$panic(new $String(ag+": value of type "+aj.typ.String()+" is not assignable to type "+ah.String()));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.assignTo};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.assignTo=function(ag,ah,ai){return this.$val.assignTo(ag,ah,ai);};DI.ptr.prototype.Convert=function(ag){var $ptr,ag,ah,ai,aj,ak,al,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ah=this;if(!((((ah.flag&256)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ai=AV("Convert",ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;case 2:aj=ag.common();$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=ER(aj,ah.typ);$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(al===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:am=ag.String();$s=8;case 8:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ah.typ.String()+" cannot be converted to type "+am));case 7:an=al(ah,ag);$s=9;case 9:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=10;case 10:return an;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Convert};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};DI.prototype.Convert=function(ag){return this.$val.Convert(ag);};ER=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ai=ah.Kind();if(ai===2||ai===3||ai===4||ai===5||ai===6){$s=1;continue;}if(ai===7||ai===8||ai===9||ai===10||ai===11||ai===12){$s=2;continue;}if(ai===13||ai===14){$s=3;continue;}if(ai===15||ai===16){$s=4;continue;}if(ai===24){$s=5;continue;}if(ai===23){$s=6;continue;}$s=7;continue;case 1:aj=ag.Kind();if(aj===2||aj===3||aj===4||aj===5||aj===6||aj===7||aj===8||aj===9||aj===10||aj===11||aj===12){return EX;}else if(aj===13||aj===14){return FB;}else if(aj===24){return FF;}$s=7;continue;case 2:ak=ag.Kind();if(ak===2||ak===3||ak===4||ak===5||ak===6||ak===7||ak===8||ak===9||ak===10||ak===11||ak===12){return EY;}else if(ak===13||ak===14){return FC;}else if(ak===24){return FG;}$s=7;continue;case 3:al=ag.Kind();if(al===2||al===3||al===4||al===5||al===6){return EZ;}else if(al===7||al===8||al===9||al===10||al===11||al===12){return FA;}else if(al===13||al===14){return FD;}$s=7;continue;case 4:am=ag.Kind();if(am===15||am===16){return FE;}$s=7;continue;case 5:if(!(ag.Kind()===23)){an=false;$s=10;continue s;}ao=ag.Elem().PkgPath();$s=11;case 11:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao==="";case 10:if(an){$s=8;continue;}$s=9;continue;case 8:aq=ag.Elem().Kind();$s=12;case 12:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;if(ap===8){$s=13;continue;}if(ap===5){$s=14;continue;}$s=15;continue;case 13:return FI;case 14:return FK;case 15:case 9:$s=7;continue;case 6:if(!(ag.Kind()===24)){ar=false;$s=18;continue s;}as=ah.Elem().PkgPath();$s=19;case 19:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as==="";case 18:if(ar){$s=16;continue;}$s=17;continue;case 16:au=ah.Elem().Kind();$s=20;case 20:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;if(at===8){$s=21;continue;}if(at===5){$s=22;continue;}$s=23;continue;case 21:return FH;case 22:return FJ;case 23:case 17:case 7:if(CN(ag,ah)){return AP;}if(!((ag.Kind()===22)&&ag.Name()===""&&(ah.Kind()===22)&&ah.Name()==="")){av=false;$s=26;continue s;}aw=ag.Elem().common();$s=27;case 27:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=ah.Elem().common();$s=28;case 28:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;ba=CN(ax,az);$s=29;case 29:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}av=ba;case 26:if(av){$s=24;continue;}$s=25;continue;case 24:return AP;case 25:if(CL(ag,ah)){if(ah.Kind()===20){return FM;}return FL;}return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:ER};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};ES=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===4){al.$set($fround(ah));}else if(am===8){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ES};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};ET=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=ai.common();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=Z(ak);am=ak.size;if(am===8){al.$set(new $Complex64(ah.$real,ah.$imag));}else if(am===16){al.$set(ah);}return new DI.ptr(ak,al,(((ag|64)>>>0)|(ak.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:ET};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};EU=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;al.SetString(ah);al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EU};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EV=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.SetBytes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EV};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EW=function(ag,ah,ai){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aj=EP(ai);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.Elem();$s=2;case 2:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=al.setRunes(ah);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}al.flag=(((al.flag&~128)>>>0)|ag)>>>0;return al;}return;}if($f===undefined){$f={$blk:EW};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};EX=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=ag.Int(),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EX};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};EY=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,ag.Uint(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:EY};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};EZ=function(ag,ah){var $ptr,ag,ah,ai,aj,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;aj=AA((ag.flag&32)>>>0,(ai=new $Int64(0,ag.Float()),new $Uint64(ai.$high,ai.$low)),ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}$s=2;case 2:return aj;}return;}if($f===undefined){$f={$blk:EZ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.$s=$s;$f.$r=$r;return $f;};FA=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=AA((ag.flag&32)>>>0,new $Uint64(0,ag.Float()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FA};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FB=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Int()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FB};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FC=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,$flatten64(ag.Uint()),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FC};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FD=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ES((ag.flag&32)>>>0,ag.Float(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FD};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FE=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ET((ag.flag&32)>>>0,ag.Complex(),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FE};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FF=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Int().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FF};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FG=function(ag,ah){var $ptr,ag,ah,ai,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=EU((ag.flag&32)>>>0,$encodeRune(ag.Uint().$low),ah);$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}$s=2;case 2:return ai;}return;}if($f===undefined){$f={$blk:FG};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.$s=$s;$f.$r=$r;return $f;};FH=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.Bytes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$bytesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FH};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FI=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HJ($stringToBytes(aj));al=ah;am=EV(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FI};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FJ=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.runes();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$runesToString(aj);al=ah;am=EU(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FJ};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FK=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=(ag.flag&32)>>>0;aj=ag.String();$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=new HQ($stringToRunes(aj));al=ah;am=EW(ai,ak,al);$s=2;case 2:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=3;case 3:return am;}return;}if($f===undefined){$f={$blk:FK};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.$s=$s;$f.$r=$r;return $f;};FL=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;ai=ah.common();$s=1;case 1:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=Z(ai);$s=2;case 2:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;al=AS(ag,false);$s=3;case 3:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;an=ah.NumMethod();$s=7;case 7:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(an===0){$s=4;continue;}$s=5;continue;case 4:ak.$set(am);$s=6;continue;case 5:AT($assertType(ah,FW),am,ak);case 6:ao=ah.common();$s=8;case 8:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=9;case 9:return new DI.ptr(ao,ak,(((((ag.flag&32)>>>0)|64)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:FL};}$f.$ptr=$ptr;$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.$s=$s;$f.$r=$r;return $f;};FM=function(ag,ah){var $ptr,ag,ah,ai,aj,ak,al,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ag=ag;if(ag.IsNil()){$s=1;continue;}$s=2;continue;case 1:ai=Y(ah);$s=3;case 3:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;aj.flag=(aj.flag|(((ag.flag&32)>>>0)))>>>0;return aj;case 2:ak=ag.Elem();$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=FL(ak,ah);$s=5;case 5:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=6;case 6:return al;}return;}if($f===undefined){$f={$blk:FM};}$f.$ptr=$ptr;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.$s=$s;$f.$r=$r;return $f;};BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];FW.methods=[{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],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([],[BN],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[FW],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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([],[BS],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],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],[BM],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)}];GP.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];BS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HE.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$Bool],false)}];HI.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)}];CG.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)}];DI.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[GJ],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,GV],[GV],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[DI],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[HW],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([DI],[],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],[DI],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[DI],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([],[DI],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[HJ],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[HQ],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([GV],[GV],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([GV],[GV],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[DI],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DI],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[DI],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([],[BN],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([DI],[DI],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[GV],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DI],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DI],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([],[DI,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[DI,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([DI],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([DI,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([HJ],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([HQ],[],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([DI,DI],[],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([],[DI,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([DI],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BM],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,FW,$UnsafePointer],[DI],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BM],[DI],false)}];DJ.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BN],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BN],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];HX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AK.init([{prop:"t",name:"t",pkg:"reflect",typ:BM,tag:""},{prop:"m",name:"m",pkg:"reflect",typ:GJ,tag:""},{prop:"keys",name:"keys",pkg:"reflect",typ:GJ,tag:""},{prop:"i",name:"i",pkg:"reflect",typ:$Int,tag:""}]);BM.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[BS],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BM],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[CF],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([HG],[CF],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[CF,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([HT],[CF,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BM],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BM],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BN],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CD],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CD,$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],[BM],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([],[FW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[GP],false)}]);BO.init([{prop:"size",name:"size",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",pkg:"reflect",typ:$Uintptr,tag:""},{prop:"hash",name:"hash",pkg:"reflect",typ:$Uint32,tag:""},{prop:"_$3",name:"_",pkg:"reflect",typ:$Uint8,tag:""},{prop:"align",name:"align",pkg:"reflect",typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",pkg:"reflect",typ:$Uint8,tag:""},{prop:"kind",name:"kind",pkg:"reflect",typ:$Uint8,tag:""},{prop:"alg",name:"alg",pkg:"reflect",typ:GM,tag:""},{prop:"gcdata",name:"gcdata",pkg:"reflect",typ:GN,tag:""},{prop:"string",name:"string",pkg:"reflect",typ:GO,tag:""},{prop:"uncommonType",name:"",pkg:"reflect",typ:GP,tag:""},{prop:"ptrToThis",name:"ptrToThis",pkg:"reflect",typ:FW,tag:""},{prop:"zero",name:"zero",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BP.init([{prop:"hash",name:"hash",pkg:"reflect",typ:HU,tag:""},{prop:"equal",name:"equal",pkg:"reflect",typ:HV,tag:""}]);BQ.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"mtyp",name:"mtyp",pkg:"reflect",typ:FW,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ifn",name:"ifn",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"tfn",name:"tfn",pkg:"reflect",typ:$UnsafePointer,tag:""}]);BR.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"methods",name:"methods",pkg:"reflect",typ:GQ,tag:""}]);BT.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"array\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"slice",name:"slice",pkg:"reflect",typ:FW,tag:""},{prop:"len",name:"len",pkg:"reflect",typ:$Uintptr,tag:""}]);BU.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"dir",name:"dir",pkg:"reflect",typ:$Uintptr,tag:""}]);BV.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"func\""},{prop:"dotdotdot",name:"dotdotdot",pkg:"reflect",typ:$Bool,tag:""},{prop:"in$2",name:"in",pkg:"reflect",typ:GC,tag:""},{prop:"out",name:"out",pkg:"reflect",typ:GC,tag:""}]);BW.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""}]);BX.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"interface\""},{prop:"methods",name:"methods",pkg:"reflect",typ:GR,tag:""}]);BY.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"map\""},{prop:"key",name:"key",pkg:"reflect",typ:FW,tag:""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""},{prop:"bucket",name:"bucket",pkg:"reflect",typ:FW,tag:""},{prop:"hmap",name:"hmap",pkg:"reflect",typ:FW,tag:""},{prop:"keysize",name:"keysize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",pkg:"reflect",typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",pkg:"reflect",typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",pkg:"reflect",typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",pkg:"reflect",typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",pkg:"reflect",typ:$Bool,tag:""}]);BZ.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CA.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",pkg:"reflect",typ:FW,tag:""}]);CB.init([{prop:"name",name:"name",pkg:"reflect",typ:GO,tag:""},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:GO,tag:""},{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"tag",name:"tag",pkg:"reflect",typ:GO,tag:""},{prop:"offset",name:"offset",pkg:"reflect",typ:$Uintptr,tag:""}]);CC.init([{prop:"rtype",name:"",pkg:"reflect",typ:BO,tag:"reflect:\"struct\""},{prop:"fields",name:"fields",pkg:"reflect",typ:GS,tag:""}]);CD.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Func",name:"Func",pkg:"",typ:DI,tag:""},{prop:"Index",name:"Index",pkg:"",typ:$Int,tag:""}]);CF.init([{prop:"Name",name:"Name",pkg:"",typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$String,tag:""},{prop:"Type",name:"Type",pkg:"",typ:BM,tag:""},{prop:"Tag",name:"Tag",pkg:"",typ:CG,tag:""},{prop:"Offset",name:"Offset",pkg:"",typ:$Uintptr,tag:""},{prop:"Index",name:"Index",pkg:"",typ:HG,tag:""},{prop:"Anonymous",name:"Anonymous",pkg:"",typ:$Bool,tag:""}]);CH.init([{prop:"typ",name:"typ",pkg:"reflect",typ:HI,tag:""},{prop:"index",name:"index",pkg:"reflect",typ:HG,tag:""}]);DI.init([{prop:"typ",name:"typ",pkg:"reflect",typ:FW,tag:""},{prop:"ptr",name:"ptr",pkg:"reflect",typ:$UnsafePointer,tag:""},{prop:"flag",name:"",pkg:"reflect",typ:DJ,tag:""}]);DM.init([{prop:"Method",name:"Method",pkg:"",typ:$String,tag:""},{prop:"Kind",name:"Kind",pkg:"",typ:BN,tag:""}]);DO.init([{prop:"itab",name:"itab",pkg:"reflect",typ:GZ,tag:""},{prop:"word",name:"word",pkg:"reflect",typ:$UnsafePointer,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;}G=false;L={};AW=$assertType($internalize($call,$emptyInterface),GK);BB=$assertType($internalize($select,$emptyInterface),GK);CE=new GL(["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"]);AX=J($jsObjectPtr);DV=$assertType(R(new $Uint8(0)),FW);$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["fmt"]=(function(){var $pkg={},$init,D,E,A,F,G,B,H,C,L,M,AF,AG,AH,AI,AJ,AK,BF,BS,BT,BU,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CR,DL,DM,I,J,N,O,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AL,BA,BB,BC,BV,BZ,CB,CC,a,b,K,P,AM,AP,AQ,AT,AW,AX,AY,AZ,BD,BE,BW,BX,CD;D=$packages["errors"];E=$packages["io"];A=$packages["math"];F=$packages["os"];G=$packages["reflect"];B=$packages["strconv"];H=$packages["sync"];C=$packages["unicode/utf8"];L=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags","fmtFlags","fmt",function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,unicode_,uniQuote_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.unicode=false;this.uniQuote=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.unicode=unicode_;this.uniQuote=uniQuote_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});M=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt","fmt","fmt",function(intbuf_,buf_,wid_,prec_,fmtFlags_){this.$val=this;if(arguments.length===0){this.intbuf=CK.zero();this.buf=CL.nil;this.wid=0;this.prec=0;this.fmtFlags=new L.ptr(false,false,false,false,false,false,false,false,false,false,false);return;}this.intbuf=intbuf_;this.buf=buf_;this.wid=wid_;this.prec=prec_;this.fmtFlags=fmtFlags_;});AF=$pkg.State=$newType(8,$kindInterface,"fmt.State","State","fmt",null);AG=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter","Formatter","fmt",null);AH=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer","Stringer","fmt",null);AI=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer","GoStringer","fmt",null);AJ=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer","buffer","fmt",null);AK=$pkg.pp=$newType(0,$kindStruct,"fmt.pp","pp","fmt",function(n_,panicking_,erroring_,buf_,arg_,value_,reordered_,goodArgNum_,runeBuf_,fmt_){this.$val=this;if(arguments.length===0){this.n=0;this.panicking=false;this.erroring=false;this.buf=AJ.nil;this.arg=$ifaceNil;this.value=new G.Value.ptr(CI.nil,0,0);this.reordered=false;this.goodArgNum=false;this.runeBuf=CJ.zero();this.fmt=new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));return;}this.n=n_;this.panicking=panicking_;this.erroring=erroring_;this.buf=buf_;this.arg=arg_;this.value=value_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.runeBuf=runeBuf_;this.fmt=fmt_;});BF=$pkg.runeUnreader=$newType(8,$kindInterface,"fmt.runeUnreader","runeUnreader","fmt",null);BS=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError","scanError","fmt",function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});BT=$pkg.ss=$newType(0,$kindStruct,"fmt.ss","ss","fmt",function(rr_,buf_,peekRune_,prevRune_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rr=$ifaceNil;this.buf=AJ.nil;this.peekRune=0;this.prevRune=0;this.count=0;this.atEOF=false;this.ssave=new BU.ptr(false,false,false,0,0,0);return;}this.rr=rr_;this.buf=buf_;this.peekRune=peekRune_;this.prevRune=prevRune_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});BU=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave","ssave","fmt",function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});CG=$sliceType($Uint8);CH=$sliceType($emptyInterface);CI=$ptrType(G.rtype);CJ=$arrayType($Uint8,4);CK=$arrayType($Uint8,65);CL=$ptrType(AJ);CM=$arrayType($Uint16,2);CN=$sliceType(CM);CO=$ptrType(AK);CR=$ptrType(BT);DL=$ptrType(M);DM=$funcType([$Int32],[$Bool],false);K=function(){var $ptr,c;c=0;while(true){if(!(c<65)){break;}((c<0||c>=I.$length)?$throwRuntimeError("index out of range"):I.$array[I.$offset+c]=48);((c<0||c>=J.$length)?$throwRuntimeError("index out of range"):J.$array[J.$offset+c]=32);c=c+(1)>>0;}};M.ptr.prototype.clearflags=function(){var $ptr,c;c=this;L.copy(c.fmtFlags,new L.ptr(false,false,false,false,false,false,false,false,false,false,false));};M.prototype.clearflags=function(){return this.$val.clearflags();};M.ptr.prototype.init=function(c){var $ptr,c,d;d=this;d.buf=c;d.clearflags();};M.prototype.init=function(c){return this.$val.init(c);};M.ptr.prototype.computePadding=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;d=CG.nil;e=0;f=0;g=this;h=!g.fmtFlags.minus;i=g.wid;if(i<0){h=false;i=-i;}i=i-(c)>>0;if(i>0){if(h&&g.fmtFlags.zero){j=I;k=i;l=0;d=j;e=k;f=l;return[d,e,f];}if(h){m=J;n=i;o=0;d=m;e=n;f=o;return[d,e,f];}else{p=J;q=0;r=i;d=p;e=q;f=r;return[d,e,f];}}return[d,e,f];};M.prototype.computePadding=function(c){return this.$val.computePadding(c);};M.ptr.prototype.writePadding=function(c,d){var $ptr,c,d,e,f;e=this;while(true){if(!(c>0)){break;}f=c;if(f>65){f=65;}e.buf.Write($subslice(d,0,f));c=c-(f)>>0;}};M.prototype.writePadding=function(c,d){return this.$val.writePadding(c,d);};M.ptr.prototype.pad=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.Write(c);return;}e=d.computePadding(C.RuneCount(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.Write(c);if(h>0){d.writePadding(h,f);}};M.prototype.pad=function(c){return this.$val.pad(c);};M.ptr.prototype.padString=function(c){var $ptr,c,d,e,f,g,h;d=this;if(!d.fmtFlags.widPresent||(d.wid===0)){d.buf.WriteString(c);return;}e=d.computePadding(C.RuneCountInString(c));f=e[0];g=e[1];h=e[2];if(g>0){d.writePadding(g,f);}d.buf.WriteString(c);if(h>0){d.writePadding(h,f);}};M.prototype.padString=function(c){return this.$val.padString(c);};M.ptr.prototype.fmt_boolean=function(c){var $ptr,c,d;d=this;if(c){d.pad(N);}else{d.pad(O);}};M.prototype.fmt_boolean=function(c){return this.$val.fmt_boolean(c);};M.ptr.prototype.integer=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;if(g.fmtFlags.precPresent&&(g.prec===0)&&(c.$high===0&&c.$low===0)){return;}h=e&&(c.$high<0||(c.$high===0&&c.$low<0));if(h){c=new $Int64(-c.$high,-c.$low);}i=$subslice(new CG(g.intbuf),0);if(g.fmtFlags.widPresent||g.fmtFlags.precPresent||g.fmtFlags.plus||g.fmtFlags.space){j=g.wid+g.prec>>0;if((d.$high===0&&d.$low===16)&&g.fmtFlags.sharp){j=j+(2)>>0;}if(g.fmtFlags.unicode){j=j+(2)>>0;if(g.fmtFlags.uniQuote){j=j+(7)>>0;}}if(h||g.fmtFlags.plus||g.fmtFlags.space){j=j+(1)>>0;}if(j>65){i=$makeSlice(CG,j);}}k=0;if(g.fmtFlags.precPresent){k=g.prec;g.fmtFlags.zero=false;}else if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&!g.fmtFlags.minus&&g.wid>0){k=g.wid;if(h||g.fmtFlags.plus||g.fmtFlags.space){k=k-(1)>>0;}}l=i.$length;m=new $Uint64(c.$high,c.$low);n=d;if((n.$high===0&&n.$low===10)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=10)))){break;}l=l-(1)>>0;o=$div64(m,new $Uint64(0,10),false);((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((p=new $Uint64(0+m.$high,48+m.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24));m=o;}}else if((n.$high===0&&n.$low===16)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=16)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(new $Uint64(m.$high&0,(m.$low&15)>>>0))));m=$shiftRightUint64(m,(4));}}else if((n.$high===0&&n.$low===8)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=8)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((r=new $Uint64(m.$high&0,(m.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(3));}}else if((n.$high===0&&n.$low===2)){while(true){if(!((m.$high>0||(m.$high===0&&m.$low>=2)))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((s=new $Uint64(m.$high&0,(m.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24));m=$shiftRightUint64(m,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=f.charCodeAt($flatten64(m)));while(true){if(!(l>0&&k>(i.$length-l>>0))){break;}l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}if(g.fmtFlags.sharp){t=d;if((t.$high===0&&t.$low===8)){if(!((((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l])===48))){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}else if((t.$high===0&&t.$low===16)){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=((120+f.charCodeAt(10)<<24>>>24)-97<<24>>>24));l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=48);}}if(g.fmtFlags.unicode){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=85);}if(h){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=45);}else if(g.fmtFlags.plus){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=43);}else if(g.fmtFlags.space){l=l-(1)>>0;((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]=32);}if(g.fmtFlags.unicode&&g.fmtFlags.uniQuote&&(c.$high>0||(c.$high===0&&c.$low>=0))&&(c.$high<0||(c.$high===0&&c.$low<=1114111))&&B.IsPrint(((c.$low+((c.$high>>31)*4294967296))>>0))){u=C.RuneLen(((c.$low+((c.$high>>31)*4294967296))>>0));v=(2+u>>0)+1>>0;$copySlice($subslice(i,(l-v>>0)),$subslice(i,l));l=l-(v)>>0;w=i.$length-v>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=32);w=w+(1)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);w=w+(1)>>0;C.EncodeRune($subslice(i,w),((c.$low+((c.$high>>31)*4294967296))>>0));w=w+(u)>>0;((w<0||w>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+w]=39);}g.pad($subslice(i,l));};M.prototype.integer=function(c,d,e,f){return this.$val.integer(c,d,e,f);};M.ptr.prototype.truncate=function(c){var $ptr,c,d,e,f,g,h,i;d=this;if(d.fmtFlags.precPresent&&d.prec>0;g+=h[1];}}return c;};M.prototype.truncate=function(c){return this.$val.truncate(c);};M.ptr.prototype.fmt_s=function(c){var $ptr,c,d;d=this;c=d.truncate(c);d.padString(c);};M.prototype.fmt_s=function(c){return this.$val.fmt_s(c);};M.ptr.prototype.fmt_sbx=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k;f=this;g=d.$length;if(d===CG.nil){g=c.length;}h=(e.charCodeAt(10)-97<<24>>>24)+120<<24>>>24;i=CG.nil;j=0;while(true){if(!(j0&&f.fmtFlags.space){i=$append(i,32);}if(f.fmtFlags.sharp&&(f.fmtFlags.space||(j===0))){i=$append(i,48,h);}k=0;if(d===CG.nil){k=c.charCodeAt(j);}else{k=((j<0||j>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+j]);}i=$append(i,e.charCodeAt((k>>>4<<24>>>24)),e.charCodeAt(((k&15)>>>0)));j=j+(1)>>0;}f.pad(i);};M.prototype.fmt_sbx=function(c,d,e){return this.$val.fmt_sbx(c,d,e);};M.ptr.prototype.fmt_sx=function(c,d){var $ptr,c,d,e;e=this;if(e.fmtFlags.precPresent&&e.prec>31)*4294967296))>>0));}else{e=B.AppendQuoteRune($subslice(new CG(d.intbuf),0,0),((c.$low+((c.$high>>31)*4294967296))>>0));}d.pad(e);};M.prototype.fmt_qc=function(c){return this.$val.fmt_qc(c);};P=function(c,d){var $ptr,c,d;if(c.fmtFlags.precPresent){return c.prec;}return d;};M.ptr.prototype.formatFloat=function(c,d,e,f){var $ptr,c,d,e,f,g,h,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);g=this;h=B.AppendFloat($subslice(new CG(g.intbuf),0,1),c,d,e,f);if(((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===45)||((1>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+1])===43)){h=$subslice(h,1);}else{(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=43);}if(A.IsInf(c,0)){if(g.fmtFlags.zero){$deferred.push([(function(){var $ptr;g.fmtFlags.zero=true;}),[]]);g.fmtFlags.zero=false;}}if(g.fmtFlags.zero&&g.fmtFlags.widPresent&&g.wid>h.$length){if(g.fmtFlags.space&&c>=0){g.buf.WriteByte(32);g.wid=g.wid-(1)>>0;}else if(g.fmtFlags.plus||c<0){g.buf.WriteByte((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));g.wid=g.wid-(1)>>0;}g.pad($subslice(h,1));return;}if(g.fmtFlags.space&&((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===43)){(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]=32);g.pad(h);return;}if(g.fmtFlags.plus||((0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0])===45)||A.IsInf(c,0)){g.pad(h);return;}g.pad($subslice(h,1));}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};M.prototype.formatFloat=function(c,d,e,f){return this.$val.formatFloat(c,d,e,f);};M.ptr.prototype.fmt_e64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),64);};M.prototype.fmt_e64=function(c){return this.$val.fmt_e64(c);};M.ptr.prototype.fmt_E64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),64);};M.prototype.fmt_E64=function(c){return this.$val.fmt_E64(c);};M.ptr.prototype.fmt_f64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),64);};M.prototype.fmt_f64=function(c){return this.$val.fmt_f64(c);};M.ptr.prototype.fmt_g64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),64);};M.prototype.fmt_g64=function(c){return this.$val.fmt_g64(c);};M.ptr.prototype.fmt_G64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),64);};M.prototype.fmt_G64=function(c){return this.$val.fmt_G64(c);};M.ptr.prototype.fmt_fb64=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,64);};M.prototype.fmt_fb64=function(c){return this.$val.fmt_fb64(c);};M.ptr.prototype.fmt_e32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,101,P(d,6),32);};M.prototype.fmt_e32=function(c){return this.$val.fmt_e32(c);};M.ptr.prototype.fmt_E32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,69,P(d,6),32);};M.prototype.fmt_E32=function(c){return this.$val.fmt_E32(c);};M.ptr.prototype.fmt_f32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,102,P(d,6),32);};M.prototype.fmt_f32=function(c){return this.$val.fmt_f32(c);};M.ptr.prototype.fmt_g32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,103,P(d,-1),32);};M.prototype.fmt_g32=function(c){return this.$val.fmt_g32(c);};M.ptr.prototype.fmt_G32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,71,P(d,-1),32);};M.prototype.fmt_G32=function(c){return this.$val.fmt_G32(c);};M.ptr.prototype.fmt_fb32=function(c){var $ptr,c,d;d=this;d.formatFloat(c,98,0,32);};M.prototype.fmt_fb32=function(c){return this.$val.fmt_fb32(c);};M.ptr.prototype.fmt_c64=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,32,d);};M.prototype.fmt_c64=function(c,d){return this.$val.fmt_c64(c,d);};M.ptr.prototype.fmt_c128=function(c,d){var $ptr,c,d,e;e=this;e.fmt_complex(c.$real,c.$imag,64,d);};M.prototype.fmt_c128=function(c,d){return this.$val.fmt_c128(c,d);};M.ptr.prototype.fmt_complex=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l;g=this;g.buf.WriteByte(40);h=g.fmtFlags.plus;i=g.fmtFlags.space;j=g.wid;k=0;while(true){l=f;if(l===98){g.formatFloat(c,98,0,e);}else if(l===101){g.formatFloat(c,101,P(g,6),e);}else if(l===69){g.formatFloat(c,69,P(g,6),e);}else if(l===102||l===70){g.formatFloat(c,102,P(g,6),e);}else if(l===103){g.formatFloat(c,103,P(g,-1),e);}else if(l===71){g.formatFloat(c,71,P(g,-1),e);}if(!((k===0))){break;}g.fmtFlags.plus=true;g.fmtFlags.space=false;g.wid=j;c=d;k=k+(1)>>0;}g.fmtFlags.space=i;g.fmtFlags.plus=h;g.wid=j;g.buf.Write(AA);};M.prototype.fmt_complex=function(c,d,e,f){return this.$val.fmt_complex(c,d,e,f);};$ptrType(AJ).prototype.Write=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.$length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteString=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;f.$set($appendSlice(f.$get(),c));g=c.length;h=$ifaceNil;d=g;e=h;return[d,e];};$ptrType(AJ).prototype.WriteByte=function(c){var $ptr,c,d;d=this;d.$set($append(d.$get(),c));return $ifaceNil;};$ptrType(AJ).prototype.WriteRune=function(c){var $ptr,c,d,e,f,g,h;d=this;if(c<128){d.$set($append(d.$get(),(c<<24>>>24)));return $ifaceNil;}e=d.$get();f=e.$length;while(true){if(!((f+4>>0)>e.$capacity)){break;}e=$append(e,0);}h=C.EncodeRune((g=$subslice(e,f,(f+4>>0)),$subslice(new CG(g.$array),g.$offset,g.$offset+g.$length)),c);d.$set($subslice(e,0,(f+h>>0)));return $ifaceNil;};AM=function(){var $ptr,c,d,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AL.Get();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$assertType(c,CO);d.panicking=false;d.erroring=false;d.fmt.init((d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))));return d;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AK.ptr.prototype.free=function(){var $ptr,c;c=this;if(c.buf.$capacity>1024){return;}c.buf=$subslice(c.buf,0,0);c.arg=$ifaceNil;c.value=new G.Value.ptr(CI.nil,0,0);AL.Put(c);};AK.prototype.free=function(){return this.$val.free();};AK.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.wid;g=e.fmt.fmtFlags.widPresent;c=f;d=g;return[c,d];};AK.prototype.Width=function(){return this.$val.Width();};AK.ptr.prototype.Precision=function(){var $ptr,c,d,e,f,g;c=0;d=false;e=this;f=e.fmt.prec;g=e.fmt.fmtFlags.precPresent;c=f;d=g;return[c,d];};AK.prototype.Precision=function(){return this.$val.Precision();};AK.ptr.prototype.Flag=function(c){var $ptr,c,d,e;d=this;e=c;if(e===45){return d.fmt.fmtFlags.minus;}else if(e===43){return d.fmt.fmtFlags.plus;}else if(e===35){return d.fmt.fmtFlags.sharp;}else if(e===32){return d.fmt.fmtFlags.space;}else if(e===48){return d.fmt.fmtFlags.zero;}return false;};AK.prototype.Flag=function(c){return this.$val.Flag(c);};AK.ptr.prototype.add=function(c){var $ptr,c,d;d=this;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteRune(c);};AK.prototype.add=function(c){return this.$val.add(c);};AK.ptr.prototype.Write=function(c){var $ptr,c,d,e,f,g;d=0;e=$ifaceNil;f=this;g=(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).Write(c);d=g[0];e=g[1];return[d,e];};AK.prototype.Write=function(c){return this.$val.Write(c);};AP=function(c,d){var $ptr,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;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:e=AM();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=f.doPrintf(c,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$bytesToString(f.buf);f.free();return g;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintf=AP;AQ=function(c,d){var $ptr,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;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:e=AP(c,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=D.New(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Errorf=AQ;AT=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,false,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AT};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprint=AT;AW=function(c){var $ptr,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;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:d=AM();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=e.doPrint(c,true,true);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$bytesToString(e.buf);e.free();return f;}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sprintln=AW;AX=function(c,d){var $ptr,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;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=c;e=c.Field(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if((f.Kind()===20)&&!f.IsNil()){$s=2;continue;}$s=3;continue;case 2:g=f.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 3:return f;}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY=function(c){var $ptr,c;return c>1000000||c<-1000000;};AZ=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;f=0;g=false;h=0;if(d>=e){i=0;j=false;k=e;f=i;g=j;h=k;return[f,g,h];}h=d;while(true){if(!(h>>24)>>0)>>0;g=true;h=h+(1)>>0;}return[f,g,h];};AK.ptr.prototype.unknownType=function(c){var $ptr,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;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=c;d=this;if(!c.IsValid()){(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);return;}(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);e=c.Type().String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteByte(63);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.unknownType};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.unknownType=function(c){return this.$val.unknownType(c);};AK.ptr.prototype.badVerb=function(c){var $ptr,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;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:d=this;d.erroring=true;d.add(37);d.add(33);d.add(c);d.add(40);if(!($interfaceIsEqual(d.arg,$ifaceNil))){$s=1;continue;}if(d.value.IsValid()){$s=2;continue;}$s=3;continue;case 1:e=G.TypeOf(d.arg).String();$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d.add(61);g=d.printArg(d.arg,118,0);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=4;continue;case 2:h=d.value.Type().String();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).WriteString(h);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;d.add(61);j=d.printValue(d.value,118,0);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=4;continue;case 3:(d.$ptr_buf||(d.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).Write(R);case 4:d.add(41);d.erroring=false;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.badVerb};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.badVerb=function(c){return this.$val.badVerb(c);};AK.ptr.prototype.fmtBool=function(c,d){var $ptr,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;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:e=this;f=d;if(f===116||f===118){$s=1;continue;}$s=2;continue;case 1:e.fmt.fmt_boolean(c);$s=3;continue;case 2:$r=e.badVerb(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBool};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBool=function(c,d){return this.$val.fmtBool(c,d);};AK.ptr.prototype.fmtC=function(c){var $ptr,c,d,e,f,g;d=this;e=((c.$low+((c.$high>>31)*4294967296))>>0);if(!((f=new $Int64(0,e),(f.$high===c.$high&&f.$low===c.$low)))){e=65533;}g=C.EncodeRune($subslice(new CG(d.runeBuf),0,4),e);d.fmt.pad($subslice(new CG(d.runeBuf),0,g));};AK.prototype.fmtC=function(c){return this.$val.fmtC(c);};AK.ptr.prototype.fmtInt64=function(c,d){var $ptr,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;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:e=this;f=d;if(f===98){$s=1;continue;}if(f===99){$s=2;continue;}if(f===100||f===118){$s=3;continue;}if(f===111){$s=4;continue;}if(f===113){$s=5;continue;}if(f===120){$s=6;continue;}if(f===85){$s=7;continue;}if(f===88){$s=8;continue;}$s=9;continue;case 1:e.fmt.integer(c,new $Uint64(0,2),true,"0123456789abcdef");$s=10;continue;case 2:e.fmtC(c);$s=10;continue;case 3:e.fmt.integer(c,new $Uint64(0,10),true,"0123456789abcdef");$s=10;continue;case 4:e.fmt.integer(c,new $Uint64(0,8),true,"0123456789abcdef");$s=10;continue;case 5:if((0=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);if(n>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}p=g.printArg(new $Uint8(o),118,f+1>>0);$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;m++;$s=18;continue;case 19:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}return;case 2:q=d;if(q===115){$s=21;continue;}if(q===120){$s=22;continue;}if(q===88){$s=23;continue;}if(q===113){$s=24;continue;}$s=25;continue;case 21:g.fmt.fmt_s($bytesToString(c));$s=26;continue;case 22:g.fmt.fmt_bx(c,"0123456789abcdef");$s=26;continue;case 23:g.fmt.fmt_bx(c,"0123456789ABCDEF");$s=26;continue;case 24:g.fmt.fmt_q($bytesToString(c));$s=26;continue;case 25:$r=g.badVerb(d);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtBytes};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtBytes=function(c,d,e,f){return this.$val.fmtBytes(c,d,e,f);};AK.ptr.prototype.fmtPointer=function(c,d){var $ptr,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;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=c;e=this;f=true;g=d;if(g===112||g===118){$s=1;continue;}if(g===98||g===100||g===111||g===120||g===88){$s=2;continue;}$s=3;continue;case 1:$s=4;continue;case 2:f=false;$s=4;continue;case 3:$r=e.badVerb(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 4:h=0;i=c.Kind();if(i===18||i===19||i===21||i===22||i===23||i===26){$s=6;continue;}$s=7;continue;case 6:h=c.Pointer();$s=8;continue;case 7:$r=e.badVerb(d);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return;case 8:if(e.fmt.fmtFlags.sharpV){$s=10;continue;}if((d===118)&&(h===0)){$s=11;continue;}$s=12;continue;case 10:e.add(40);j=c.Type().String();$s=14;case 14:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(j);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;e.add(41);e.add(40);if(h===0){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(T);}else{e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),true);}e.add(41);$s=13;continue;case 11:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);$s=13;continue;case 12:if(f){$s=16;continue;}$s=17;continue;case 16:e.fmt0x64(new $Uint64(0,h.constructor===Number?h:1),!e.fmt.fmtFlags.sharp);$s=18;continue;case 17:$r=e.fmtUint64(new $Uint64(0,h.constructor===Number?h:1),d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 13:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.fmtPointer};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.fmtPointer=function(c,d){return this.$val.fmtPointer(c,d);};AK.ptr.prototype.catchPanic=function(c,d){var $ptr,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;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:e=this;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=G.ValueOf(c);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if((h.Kind()===22)&&h.IsNil()){$s=4;continue;}$s=5;continue;case 4:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(R);return;case 5:if(e.panicking){$panic(f);}e.fmt.clearflags();(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(d);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(Y);e.panicking=true;i=e.printArg(f,118,0);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e.panicking=false;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.catchPanic};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.catchPanic=function(c,d){return this.$val.catchPanic(c,d);};AK.ptr.prototype.clearSpecialFlags=function(){var $ptr,c,d,e;c=false;d=false;e=this;c=e.fmt.fmtFlags.plusV;if(c){e.fmt.fmtFlags.plus=true;e.fmt.fmtFlags.plusV=false;}d=e.fmt.fmtFlags.sharpV;if(d){e.fmt.fmtFlags.sharp=true;e.fmt.fmtFlags.sharpV=false;}return[c,d];};AK.prototype.clearSpecialFlags=function(){return this.$val.clearSpecialFlags();};AK.ptr.prototype.restoreSpecialFlags=function(c,d){var $ptr,c,d,e;e=this;if(c){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}if(d){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}};AK.prototype.restoreSpecialFlags=function(c,d){return this.$val.restoreSpecialFlags(c,d);};AK.ptr.prototype.handleMethods=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,$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;$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=false;f=this;if(f.erroring){return e;}g=$assertType(f.arg,AG,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:e=true;j=f.clearSpecialFlags();$deferred.push([$methodVal(f,"restoreSpecialFlags"),[j[0],j[1]]]);$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);$r=h.Format(f,c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 2:if(f.fmt.fmtFlags.sharpV){$s=4;continue;}$s=5;continue;case 4:k=$assertType(f.arg,AI,true);l=k[0];m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);n=l.GoString();$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=f.fmt.fmt_s(n);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return e;case 8:$s=6;continue;case 5:o=c;if(o===118||o===115||o===120||o===88||o===113){$s=11;continue;}$s=12;continue;case 11:p=f.arg;if($assertType(p,$error,true)[1]){$s=13;continue;}if($assertType(p,AH,true)[1]){$s=14;continue;}$s=15;continue;case 13:q=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);r=q.Error();$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=f.printArg(new $String(r),c,d);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;return e;case 14:t=p;e=true;$deferred.push([$methodVal(f,"catchPanic"),[f.arg,c]]);u=t.String();$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=f.printArg(new $String(u),c,d);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;return e;case 15:case 12:case 6:e=false;return e;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return e;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AK.ptr.prototype.handleMethods};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};AK.prototype.handleMethods=function(c,d){return this.$val.handleMethods(c,d);};AK.ptr.prototype.printArg=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,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;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=false;g=this;g.arg=c;g.value=new G.Value.ptr(CI.nil,0,0);if($interfaceIsEqual(c,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:g.fmt.pad(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=G.TypeOf(c).String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:k=G.ValueOf(c);$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=g.fmtPointer(k,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:l=c;if($assertType(l,$Bool,true)[1]){$s=14;continue;}if($assertType(l,$Float32,true)[1]){$s=15;continue;}if($assertType(l,$Float64,true)[1]){$s=16;continue;}if($assertType(l,$Complex64,true)[1]){$s=17;continue;}if($assertType(l,$Complex128,true)[1]){$s=18;continue;}if($assertType(l,$Int,true)[1]){$s=19;continue;}if($assertType(l,$Int8,true)[1]){$s=20;continue;}if($assertType(l,$Int16,true)[1]){$s=21;continue;}if($assertType(l,$Int32,true)[1]){$s=22;continue;}if($assertType(l,$Int64,true)[1]){$s=23;continue;}if($assertType(l,$Uint,true)[1]){$s=24;continue;}if($assertType(l,$Uint8,true)[1]){$s=25;continue;}if($assertType(l,$Uint16,true)[1]){$s=26;continue;}if($assertType(l,$Uint32,true)[1]){$s=27;continue;}if($assertType(l,$Uint64,true)[1]){$s=28;continue;}if($assertType(l,$Uintptr,true)[1]){$s=29;continue;}if($assertType(l,$String,true)[1]){$s=30;continue;}if($assertType(l,CG,true)[1]){$s=31;continue;}if($assertType(l,G.Value,true)[1]){$s=32;continue;}$s=33;continue;case 14:m=l.$val;$r=g.fmtBool(m,d);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 15:n=l.$val;$r=g.fmtFloat32(n,d);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 16:o=l.$val;$r=g.fmtFloat64(o,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 17:p=l.$val;$r=g.fmtComplex64(p,d);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 18:q=l.$val;$r=g.fmtComplex128(q,d);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 19:r=l.$val;$r=g.fmtInt64(new $Int64(0,r),d);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 20:s=l.$val;$r=g.fmtInt64(new $Int64(0,s),d);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 21:t=l.$val;$r=g.fmtInt64(new $Int64(0,t),d);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 22:u=l.$val;$r=g.fmtInt64(new $Int64(0,u),d);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 23:v=l.$val;$r=g.fmtInt64(v,d);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 24:w=l.$val;$r=g.fmtUint64(new $Uint64(0,w),d);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 25:x=l.$val;$r=g.fmtUint64(new $Uint64(0,x),d);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 26:y=l.$val;$r=g.fmtUint64(new $Uint64(0,y),d);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 27:z=l.$val;$r=g.fmtUint64(new $Uint64(0,z),d);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 28:aa=l.$val;$r=g.fmtUint64(aa,d);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 29:ab=l.$val;$r=g.fmtUint64(new $Uint64(0,ab.constructor===Number?ab:1),d);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=34;continue;case 30:ac=l.$val;$r=g.fmtString(ac,d);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d===115)||(d===118);$s=34;continue;case 31:ad=l.$val;$r=g.fmtBytes(ad,d,$ifaceNil,e);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=34;continue;case 32:ae=l.$val;af=g.printReflectValue(ae,d,e);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}f=af;$s=54;case 54:return f;case 33:ag=l;ah=g.handleMethods(d,e);$s=55;case 55:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(ai){$s=56;continue;}$s=57;continue;case 56:f=false;return f;case 57:aj=G.ValueOf(c);$s=58;case 58:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=g.printReflectValue(aj,d,e);$s=59;case 59:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}f=ak;$s=60;case 60:return f;case 34:g.arg=$ifaceNil;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printArg};}$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.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;};AK.prototype.printArg=function(c,d,e){return this.$val.printArg(c,d,e);};AK.ptr.prototype.printValue=function(c,d,e){var $ptr,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;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:f=false;c=c;g=this;if(!c.IsValid()){$s=1;continue;}$s=2;continue;case 1:if((d===84)||(d===118)){$s=3;continue;}$s=4;continue;case 3:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);$s=5;continue;case 4:$r=g.badVerb(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:f=false;return f;case 2:h=d;if(h===84){$s=7;continue;}if(h===112){$s=8;continue;}$s=9;continue;case 7:i=c.Type().String();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=g.printArg(new $String(i),115,0);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;f=false;return f;case 8:$r=g.fmtPointer(c,d);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=false;return f;case 9:g.arg=$ifaceNil;if(c.CanInterface()){$s=13;continue;}$s=14;continue;case 13:k=c.Interface();$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g.arg=k;case 14:l=g.handleMethods(d,e);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(m){$s=17;continue;}$s=18;continue;case 17:f=false;return f;case 18:n=g.printReflectValue(c,d,e);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}f=n;$s=20;case 20:return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printValue};}$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.$s=$s;$f.$r=$r;return $f;};AK.prototype.printValue=function(c,d,e){return this.$val.printValue(c,d,e);};AK.ptr.prototype.printReflectValue=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,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,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;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;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=false;c=c;g=this;h=g.value;g.value=c;i=c;j=i.Kind();if(j===0){$s=1;continue;}if(j===1){$s=2;continue;}if(j===2||j===3||j===4||j===5||j===6){$s=3;continue;}if(j===7||j===8||j===9||j===10||j===11||j===12){$s=4;continue;}if(j===13||j===14){$s=5;continue;}if(j===15||j===16){$s=6;continue;}if(j===24){$s=7;continue;}if(j===21){$s=8;continue;}if(j===25){$s=9;continue;}if(j===20){$s=10;continue;}if(j===17||j===23){$s=11;continue;}if(j===22){$s=12;continue;}if(j===18||j===19||j===26){$s=13;continue;}$s=14;continue;case 1:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("");$s=15;continue;case 2:$r=g.fmtBool(i.Bool(),d);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 3:$r=g.fmtInt64(i.Int(),d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 4:$r=g.fmtUint64(i.Uint(),d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 5:k=i.Type().Size();$s=22;case 22:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===4){$s=19;continue;}$s=20;continue;case 19:$r=g.fmtFloat32($fround(i.Float()),d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=21;continue;case 20:$r=g.fmtFloat64(i.Float(),d);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:$s=15;continue;case 6:l=i.Type().Size();$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(l===8){$s=25;continue;}$s=26;continue;case 25:$r=g.fmtComplex64((m=i.Complex(),new $Complex64(m.$real,m.$imag)),d);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:$r=g.fmtComplex128(i.Complex(),d);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$s=15;continue;case 7:n=i.String();$s=31;case 31:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=g.fmtString(n,d);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 8:if(g.fmt.fmtFlags.sharpV){$s=33;continue;}$s=34;continue;case 33:o=i.Type().String();$s=36;case 36:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(o);$s=37;case 37:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;if(i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=35;continue;case 34:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(U);case 35:q=i.MapKeys();$s=38;case 38:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=r;t=0;case 39:if(!(t=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]);if(u>0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}w=g.printValue(v,d,e+1>>0);$s=41;case 41:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);x=i.MapIndex(v);$s=42;case 42:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=g.printValue(x,d,e+1>>0);$s=43;case 43:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;t++;$s=39;continue;case 40:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 9:if(g.fmt.fmtFlags.sharpV){$s=44;continue;}$s=45;continue;case 44:z=c.Type().String();$s=46;case 46:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(z);$s=47;case 47:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 45:g.add(123);ab=i;ac=ab.Type();ad=0;case 48:if(!(ad0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}if(g.fmt.fmtFlags.plusV||g.fmt.fmtFlags.sharpV){$s=50;continue;}$s=51;continue;case 50:ae=ac.Field(ad);$s=52;case 52:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=$clone(ae,G.StructField);if(!(af.Name==="")){$s=53;continue;}$s=54;continue;case 53:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(af.Name);(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(58);case 54:case 51:ag=AX(ab,ad);$s=55;case 55:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=g.printValue(ag,d,e+1>>0);$s=56;case 56:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ad=ad+(1)>>0;$s=48;continue;case 49:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);$s=15;continue;case 10:ai=i.Elem();$s=57;case 57:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!aj.IsValid()){$s=58;continue;}$s=59;continue;case 58:if(g.fmt.fmtFlags.sharpV){$s=61;continue;}$s=62;continue;case 61:ak=i.Type().String();$s=64;case 64:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(ak);$s=65;case 65:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}al;(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(S);$s=63;continue;case 62:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(R);case 63:$s=60;continue;case 59:am=g.printValue(aj,d,e+1>>0);$s=66;case 66:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}f=am;case 60:$s=15;continue;case 11:an=i.Type();ap=an.Elem();$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.Kind();$s=71;case 71:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq===8)){ao=false;$s=69;continue s;}ar=an.Elem();$s=72;case 72:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ao=$interfaceIsEqual(ar,BC)||(d===115)||(d===113)||(d===120);case 69:if(ao){$s=67;continue;}$s=68;continue;case 67:as=CG.nil;if(i.Kind()===23){$s=73;continue;}if(i.CanAddr()){$s=74;continue;}$s=75;continue;case 73:at=i.Bytes();$s=77;case 77:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;$s=76;continue;case 74:au=i.Slice(0,i.Len());$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au.Bytes();$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}as=av;$s=76;continue;case 75:as=$makeSlice(CG,i.Len());aw=as;ax=0;case 80:if(!(ax=as.$length)?$throwRuntimeError("index out of range"):as.$array[as.$offset+ay]=(ba.$low<<24>>>24));ax++;$s=80;continue;case 81:case 76:$r=g.fmtBytes(as,d,an,e);$s=84;case 84:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d===115;$s=15;continue;case 68:if(g.fmt.fmtFlags.sharpV){$s=85;continue;}$s=86;continue;case 85:bb=c.Type().String();$s=88;case 88:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString(bb);$s=89;case 89:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bc;if((i.Kind()===23)&&i.IsNil()){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteString("(nil)");$s=15;continue;}(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(123);$s=87;continue;case 86:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(91);case 87:bd=0;case 90:if(!(bd0){if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).Write(Q);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(32);}}be=i.Index(bd);$s=92;case 92:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=g.printValue(be,d,e+1>>0);$s=93;case 93:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bf;bd=bd+(1)>>0;$s=90;continue;case 91:if(g.fmt.fmtFlags.sharpV){(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(125);}else{(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(93);}$s=15;continue;case 12:bg=i.Pointer();if(!((bg===0))&&(e===0)){$s=94;continue;}$s=95;continue;case 94:bh=i.Elem();$s=96;case 96:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=bi.Kind();if(bj===17||bj===23){$s=97;continue;}if(bj===25){$s=98;continue;}if(bj===21){$s=99;continue;}$s=100;continue;case 97:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bk=g.printValue(bi,d,e+1>>0);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bk;$s=15;continue s;$s=100;continue;case 98:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bl=g.printValue(bi,d,e+1>>0);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bl;$s=15;continue s;$s=100;continue;case 99:(g.$ptr_buf||(g.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},g))).WriteByte(38);bm=g.printValue(bi,d,e+1>>0);$s=103;case 103:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bm;$s=15;continue s;case 100:case 95:$r=g.fmtPointer(c,d);$s=104;case 104:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 13:$r=g.fmtPointer(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=15;continue;case 14:$r=g.unknownType(i);$s=106;case 106:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:g.value=h;f=f;return f;}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.printReflectValue};}$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.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;};AK.prototype.printReflectValue=function(c,d,e){return this.$val.printReflectValue(c,d,e);};BD=function(c,d){var $ptr,c,d,e,f,g,h;e=0;f=false;g=0;g=d;if(d=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]),$Int,true);e=h[0];f=h[1];g=d+1>>0;if(AY(e)){e=0;f=false;}}return[e,f,g];};BE=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;d=0;e=0;f=false;if(c.length<3){g=0;h=1;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;while(true){if(!(j>0;q=false;d=o;e=p;f=q;return[d,e,f];}r=l-1>>0;s=j+1>>0;t=true;d=r;e=s;f=t;return[d,e,f];}j=j+(1)>>0;}u=0;v=1;w=false;d=u;e=v;f=w;return[d,e,f];};AK.ptr.prototype.argNumber=function(c,d,e,f){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=0;h=0;i=false;j=this;if(d.length<=e||!((d.charCodeAt(e)===91))){k=c;l=e;m=false;g=k;h=l;i=m;return[g,h,i];}j.reordered=true;n=BE(d.substring(e));o=n[0];p=n[1];q=n[2];if(q&&0<=o&&o>0;t=true;g=r;h=s;i=t;return[g,h,i];}j.goodArgNum=false;u=c;v=e+p>>0;w=q;g=u;h=v;i=w;return[g,h,i];};AK.prototype.argNumber=function(c,d,e,f){return this.$val.argNumber(c,d,e,f);};AK.ptr.prototype.doPrintf=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=c.length;g=0;h=false;e.reordered=false;i=0;case 1:if(!(i>0;}if(i>j){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(c.substring(j,i));}if(i>=f){$s=2;continue;}i=i+(1)>>0;e.fmt.clearflags();F:while(true){if(!(i>0;}l=e.argNumber(g,c,i,d.$length);g=l[0];i=l[1];h=l[2];if(i>0;m=BD(d,g);e.fmt.wid=m[0];e.fmt.fmtFlags.widPresent=m[1];g=m[2];if(!e.fmt.fmtFlags.widPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AC);}if(e.fmt.wid<0){e.fmt.wid=-e.fmt.wid;e.fmt.fmtFlags.minus=true;}h=false;}else{n=AZ(c,i,f);e.fmt.wid=n[0];e.fmt.fmtFlags.widPresent=n[1];i=n[2];if(h&&e.fmt.fmtFlags.widPresent){e.goodArgNum=false;}}if((i+1>>0)>0;if(h){e.goodArgNum=false;}o=e.argNumber(g,c,i,d.$length);g=o[0];i=o[1];h=o[2];if(i>0;p=BD(d,g);e.fmt.prec=p[0];e.fmt.fmtFlags.precPresent=p[1];g=p[2];if(e.fmt.prec<0){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=false;}if(!e.fmt.fmtFlags.precPresent){(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AD);}h=false;}else{q=AZ(c,i,f);e.fmt.prec=q[0];e.fmt.fmtFlags.precPresent=q[1];i=q[2];if(!e.fmt.fmtFlags.precPresent){e.fmt.prec=0;e.fmt.fmtFlags.precPresent=true;}}}if(!h){r=e.argNumber(g,c,i,d.$length);g=r[0];i=r[1];h=r[2];}if(i>=f){$s=3;continue;}$s=4;continue;case 3:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(AE);$s=1;continue;case 4:s=C.DecodeRuneInString(c.substring(i));t=s[0];u=s[1];i=i+(u)>>0;if(t===37){$s=5;continue;}$s=6;continue;case 5:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(37);$s=1;continue;case 6:if(!e.goodArgNum){$s=7;continue;}if(g>=d.$length){$s=8;continue;}$s=9;continue;case 7:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(X);$s=1;continue;$s=9;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(V);e.add(t);(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).Write(W);$s=1;continue;case 9:v=((g<0||g>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);g=g+(1)>>0;if(t===118){if(e.fmt.fmtFlags.sharp){e.fmt.fmtFlags.sharp=false;e.fmt.fmtFlags.sharpV=true;}if(e.fmt.fmtFlags.plus){e.fmt.fmtFlags.plus=false;e.fmt.fmtFlags.plusV=true;}}w=e.printArg(v,t,0);$s=10;case 10:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=1;continue;case 2:if(!e.reordered&&g=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+g]);if(!($interfaceIsEqual(x,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:y=G.TypeOf(x).String();$s=17;case 17:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteString(y);$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(61);case 16:aa=e.printArg(x,118,0);$s=19;case 19:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;if((g+1>>0)>0;$s=13;continue;case 14:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteByte(41);case 12:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrintf};}$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;};AK.prototype.doPrintf=function(c,d){return this.$val.doPrintf(c,d);};AK.ptr.prototype.doPrint=function(c,d,e){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:f=this;g=false;h=0;case 1:if(!(h=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+h]);if(h>0){$s=3;continue;}$s=4;continue;case 3:if(!(!($interfaceIsEqual(i,$ifaceNil)))){j=false;$s=5;continue s;}k=G.TypeOf(i).Kind();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k===24;case 5:l=j;if(d||!l&&!g){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(32);}case 4:m=f.printArg(i,118,0);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;h=h+(1)>>0;$s=1;continue;case 2:if(e){(f.$ptr_buf||(f.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},f))).WriteByte(10);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AK.ptr.prototype.doPrint};}$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;};AK.prototype.doPrint=function(c,d,e){return this.$val.doPrint(c,d,e);};BT.ptr.prototype.Read=function(c){var $ptr,c,d,e,f,g,h;d=0;e=$ifaceNil;f=this;g=0;h=D.New("ScanState's Read should not be called. Use ReadRune");d=g;e=h;return[d,e];};BT.prototype.Read=function(c){return this.$val.Read(c);};BT.ptr.prototype.ReadRune=function(){var $ptr,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;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:c=0;d=0;e=$ifaceNil;f=this;if(f.peekRune>=0){f.count=f.count+(1)>>0;c=f.peekRune;d=C.RuneLen(c);f.prevRune=c;f.peekRune=-1;return[c,d,e];}if(f.atEOF||f.ssave.nlIsEnd&&(f.prevRune===10)||f.count>=f.ssave.argLimit){e=E.EOF;return[c,d,e];}h=f.rr.ReadRune();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c=g[0];d=g[1];e=g[2];if($interfaceIsEqual(e,$ifaceNil)){f.count=f.count+(1)>>0;f.prevRune=c;}else if($interfaceIsEqual(e,E.EOF)){f.atEOF=true;}return[c,d,e];}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.ReadRune};}$f.$ptr=$ptr;$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;};BT.prototype.ReadRune=function(){return this.$val.ReadRune();};BT.ptr.prototype.Width=function(){var $ptr,c,d,e,f,g,h,i;c=0;d=false;e=this;if(e.ssave.maxWid===1073741824){f=0;g=false;c=f;d=g;return[c,d];}h=e.ssave.maxWid;i=true;c=h;d=i;return[c,d];};BT.prototype.Width=function(){return this.$val.Width();};BT.ptr.prototype.getRune=function(){var $ptr,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;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=0;d=this;f=d.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c=e[0];g=e[2];if(!($interfaceIsEqual(g,$ifaceNil))){if($interfaceIsEqual(g,E.EOF)){c=-1;return c;}d.error(g);}return c;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.getRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.getRune=function(){return this.$val.getRune();};BT.ptr.prototype.UnreadRune=function(){var $ptr,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;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=this;d=$assertType(c.rr,BF,true);e=d[0];f=d[1];if(f){$s=1;continue;}$s=2;continue;case 1:g=e.UnreadRune();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=3;continue;case 2:c.peekRune=c.prevRune;case 3:c.prevRune=-1;c.count=c.count-(1)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.UnreadRune};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BT.ptr.prototype.error=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(c),new e.constructor.elem(e)));};BT.prototype.error=function(c){return this.$val.error(c);};BT.ptr.prototype.errorString=function(c){var $ptr,c,d,e;d=this;$panic((e=new BS.ptr(D.New(c)),new e.constructor.elem(e)));};BT.prototype.errorString=function(c){return this.$val.errorString(c);};BT.ptr.prototype.Token=function(c,d){var $ptr,c,d,e,f,g,h,$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;$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=CG.nil;e[0]=$ifaceNil;g=this;$deferred.push([(function(e){return function(){var $ptr,h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,BS,true);j=$clone(i[0],BS);k=i[1];if(k){e[0]=j.err;}else{$panic(h);}}};})(e),[]]);if(d===$throwNilPointerError){d=BX;}g.buf=$subslice(g.buf,0,0);h=g.token(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;return[f,e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[f,e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:BT.ptr.prototype.Token};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};BT.prototype.Token=function(c,d){return this.$val.Token(c,d);};BW=function(c){var $ptr,c,d,e,f,g;if(c>=65536){return false;}d=(c<<16>>>16);e=BV;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),CM);if(d1024){return;}d.buf=$subslice(d.buf,0,0);d.rr=$ifaceNil;BZ.Put(d);};BT.prototype.free=function(c){return this.$val.free(c);};BT.ptr.prototype.skipSpace=function(c){var $ptr,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;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:d=this;case 1:e=d.getRune();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f===-1){return;}if(!(f===13)){g=false;$s=6;continue s;}h=d.peek("\n");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 6:if(g){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(f===10){$s=8;continue;}$s=9;continue;case 8:if(c){$s=2;continue;}if(d.ssave.nlIsSpace){$s=1;continue;}d.errorString("unexpected newline");return;case 9:if(!BW(f)){$s=10;continue;}$s=11;continue;case 10:i=d.UnreadRune();$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=2;continue;case 11:$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.skipSpace};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.skipSpace=function(c){return this.$val.skipSpace(c);};BT.ptr.prototype.token=function(c,d){var $ptr,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;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:e=this;if(c){$s=1;continue;}$s=2;continue;case 1:$r=e.skipSpace(false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:f=e.getRune();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=5;continue;}h=d(g);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=7;continue;}$s=8;continue;case 7:i=e.UnreadRune();$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=5;continue;case 8:(e.$ptr_buf||(e.$ptr_buf=new CL(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},e))).WriteRune(g);$s=4;continue;case 5:return(j=e.buf,$subslice(new CG(j.$array),j.$offset,j.$offset+j.$length));}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.token};}$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.$s=$s;$f.$r=$r;return $f;};BT.prototype.token=function(c,d){return this.$val.token(c,d);};CD=function(c,d){var $ptr,c,d,e,f,g,h,i;e=c;f=0;while(true){if(!(f=0;}return;}if($f===undefined){$f={$blk:BT.ptr.prototype.peek};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};BT.prototype.peek=function(c){return this.$val.peek(c);};DL.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([CL],[],false)},{prop:"computePadding",name:"computePadding",pkg:"fmt",typ:$funcType([$Int],[CG,$Int,$Int],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int,CG],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([CG],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_boolean",name:"fmt_boolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"integer",name:"integer",pkg:"fmt",typ:$funcType([$Int64,$Uint64,$Bool,$String],[],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"fmt_s",name:"fmt_s",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_sbx",name:"fmt_sbx",pkg:"fmt",typ:$funcType([$String,CG,$String],[],false)},{prop:"fmt_sx",name:"fmt_sx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmt_bx",name:"fmt_bx",pkg:"fmt",typ:$funcType([CG,$String],[],false)},{prop:"fmt_q",name:"fmt_q",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmt_qc",name:"fmt_qc",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"formatFloat",name:"formatFloat",pkg:"fmt",typ:$funcType([$Float64,$Uint8,$Int,$Int],[],false)},{prop:"fmt_e64",name:"fmt_e64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_E64",name:"fmt_E64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_f64",name:"fmt_f64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_g64",name:"fmt_g64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_G64",name:"fmt_G64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_fb64",name:"fmt_fb64",pkg:"fmt",typ:$funcType([$Float64],[],false)},{prop:"fmt_e32",name:"fmt_e32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_E32",name:"fmt_E32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_f32",name:"fmt_f32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_g32",name:"fmt_g32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_G32",name:"fmt_G32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_fb32",name:"fmt_fb32",pkg:"fmt",typ:$funcType([$Float32],[],false)},{prop:"fmt_c64",name:"fmt_c64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmt_c128",name:"fmt_c128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmt_complex",name:"fmt_complex",pkg:"fmt",typ:$funcType([$Float64,$Float64,$Int,$Int32],[],false)}];CL.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$error],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"add",name:"add",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([G.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtInt64",name:"fmtInt64",pkg:"fmt",typ:$funcType([$Int64,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Int64],[],false)},{prop:"fmtUint64",name:"fmtUint64",pkg:"fmt",typ:$funcType([$Uint64,$Int32],[],false)},{prop:"fmtFloat32",name:"fmtFloat32",pkg:"fmt",typ:$funcType([$Float32,$Int32],[],false)},{prop:"fmtFloat64",name:"fmtFloat64",pkg:"fmt",typ:$funcType([$Float64,$Int32],[],false)},{prop:"fmtComplex64",name:"fmtComplex64",pkg:"fmt",typ:$funcType([$Complex64,$Int32],[],false)},{prop:"fmtComplex128",name:"fmtComplex128",pkg:"fmt",typ:$funcType([$Complex128,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([CG,$Int32,G.Type,$Int],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([G.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"clearSpecialFlags",name:"clearSpecialFlags",pkg:"fmt",typ:$funcType([],[$Bool,$Bool],false)},{prop:"restoreSpecialFlags",name:"restoreSpecialFlags",pkg:"fmt",typ:$funcType([$Bool,$Bool],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$Int],[$Bool],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"printReflectValue",name:"printReflectValue",pkg:"fmt",typ:$funcType([G.Value,$Int32,$Int],[$Bool],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,CH],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([CH,$Bool,$Bool],[],false)}];CR.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([CG],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,DM],[CG,$error],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([BU],[],false)},{prop:"skipSpace",name:"skipSpace",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,DM],[CG],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([CH],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,CH],[$Int,$error],false)}];L.init([{prop:"widPresent",name:"widPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",pkg:"fmt",typ:$Bool,tag:""},{prop:"minus",name:"minus",pkg:"fmt",typ:$Bool,tag:""},{prop:"plus",name:"plus",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharp",name:"sharp",pkg:"fmt",typ:$Bool,tag:""},{prop:"space",name:"space",pkg:"fmt",typ:$Bool,tag:""},{prop:"unicode",name:"unicode",pkg:"fmt",typ:$Bool,tag:""},{prop:"uniQuote",name:"uniQuote",pkg:"fmt",typ:$Bool,tag:""},{prop:"zero",name:"zero",pkg:"fmt",typ:$Bool,tag:""},{prop:"plusV",name:"plusV",pkg:"fmt",typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",pkg:"fmt",typ:$Bool,tag:""}]);M.init([{prop:"intbuf",name:"intbuf",pkg:"fmt",typ:CK,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:CL,tag:""},{prop:"wid",name:"wid",pkg:"fmt",typ:$Int,tag:""},{prop:"prec",name:"prec",pkg:"fmt",typ:$Int,tag:""},{prop:"fmtFlags",name:"",pkg:"fmt",typ:L,tag:""}]);AF.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CG],[$Int,$error],false)}]);AG.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AF,$Int32],[],false)}]);AH.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AI.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AJ.init($Uint8);AK.init([{prop:"n",name:"n",pkg:"fmt",typ:$Int,tag:""},{prop:"panicking",name:"panicking",pkg:"fmt",typ:$Bool,tag:""},{prop:"erroring",name:"erroring",pkg:"fmt",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"arg",name:"arg",pkg:"fmt",typ:$emptyInterface,tag:""},{prop:"value",name:"value",pkg:"fmt",typ:G.Value,tag:""},{prop:"reordered",name:"reordered",pkg:"fmt",typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",pkg:"fmt",typ:$Bool,tag:""},{prop:"runeBuf",name:"runeBuf",pkg:"fmt",typ:CJ,tag:""},{prop:"fmt",name:"fmt",pkg:"fmt",typ:M,tag:""}]);BF.init([{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);BS.init([{prop:"err",name:"err",pkg:"fmt",typ:$error,tag:""}]);BT.init([{prop:"rr",name:"rr",pkg:"fmt",typ:E.RuneReader,tag:""},{prop:"buf",name:"buf",pkg:"fmt",typ:AJ,tag:""},{prop:"peekRune",name:"peekRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"prevRune",name:"prevRune",pkg:"fmt",typ:$Int32,tag:""},{prop:"count",name:"count",pkg:"fmt",typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",pkg:"fmt",typ:$Bool,tag:""},{prop:"ssave",name:"",pkg:"fmt",typ:BU,tag:""}]);BU.init([{prop:"validSave",name:"validSave",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",pkg:"fmt",typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",pkg:"fmt",typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",pkg:"fmt",typ:$Int,tag:""},{prop:"limit",name:"limit",pkg:"fmt",typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",pkg:"fmt",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=D.$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=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=$makeSlice(CG,65);J=$makeSlice(CG,65);N=new CG($stringToBytes("true"));O=new CG($stringToBytes("false"));Q=new CG($stringToBytes(", "));R=new CG($stringToBytes(""));S=new CG($stringToBytes("(nil)"));T=new CG($stringToBytes("nil"));U=new CG($stringToBytes("map["));V=new CG($stringToBytes("%!"));W=new CG($stringToBytes("(MISSING)"));X=new CG($stringToBytes("(BADINDEX)"));Y=new CG($stringToBytes("(PANIC="));Z=new CG($stringToBytes("%!(EXTRA "));AA=new CG($stringToBytes("i)"));AB=new CG($stringToBytes("[]byte{"));AC=new CG($stringToBytes("%!(BADWIDTH)"));AD=new CG($stringToBytes("%!(BADPREC)"));AE=new CG($stringToBytes("%!(NOVERB)"));AL=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new AK.ptr(0,false,false,AJ.nil,$ifaceNil,new G.Value.ptr(CI.nil,0,0),false,false,CJ.zero(),new M.ptr(CK.zero(),CL.nil,0,0,new L.ptr(false,false,false,false,false,false,false,false,false,false,false)));}));a=G.TypeOf(new $Int(0)).Bits();$s=9;case 9:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}BA=a;b=G.TypeOf(new $Uintptr(0)).Bits();$s=10;case 10:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}BB=b;BC=G.TypeOf(new $Uint8(0));BV=new CN([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);BZ=new H.Pool.ptr(0,0,CH.nil,(function(){var $ptr;return new BT.ptr($ifaceNil,AJ.nil,0,0,0,false,new BU.ptr(false,false,false,0,0,0));}));CB=D.New("syntax error scanning complex number");CC=D.New("syntax error scanning boolean");K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["sort"]=(function(){var $pkg={},$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:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path/filepath"]=(function(){var $pkg={},$init,G,A,B,C,D,E,F;G=$packages["bytes"];A=$packages["errors"];B=$packages["os"];C=$packages["runtime"];D=$packages["sort"];E=$packages["strings"];F=$packages["unicode/utf8"];$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=G.$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=E.$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");$pkg.SkipDir=A.New("skip this directory");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["io/ioutil"]=(function(){var $pkg={},$init,A,B,C,F,D,G,E,H,Y,Z,AA,R;A=$packages["bytes"];B=$packages["io"];C=$packages["os"];F=$packages["path/filepath"];D=$packages["sort"];G=$packages["strconv"];E=$packages["sync"];H=$packages["time"];Y=$sliceType($emptyInterface);Z=$sliceType($Uint8);AA=$ptrType(Z);$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=F.$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=G.$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=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}R=new E.Pool.ptr(0,0,Y.nil,(function(){var $ptr,a,b;a=$makeSlice(Z,8192);return(b||(b=new AA(function(){return a;},function($v){a=$subslice(new Z($v.$array),$v.$offset,$v.$offset+$v.$length);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/audio"]=(function(){var $pkg={},$init,C,A,B,D,H,F,L;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["io"];B=$packages["io/ioutil"];F=function(){var $ptr;L();};$pkg.Init=F;L=function(){var $ptr,a;if(!($global.require===undefined)){return;}a=$global.AudioContext;if(a===undefined){a=$global.webkitAudioContext;}if(a===undefined){return;}H=new(a)();D=true;};$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=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;}H=null;D=false;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/gopherjs/webgl"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,J,K,L,M,D,F;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg.ContextAttributes=$newType(0,$kindStruct,"webgl.ContextAttributes","ContextAttributes","github.com/gopherjs/webgl",function(Alpha_,Depth_,Stencil_,Antialias_,PremultipliedAlpha_,PreserveDrawingBuffer_){this.$val=this;if(arguments.length===0){this.Alpha=false;this.Depth=false;this.Stencil=false;this.Antialias=false;this.PremultipliedAlpha=false;this.PreserveDrawingBuffer=false;return;}this.Alpha=Alpha_;this.Depth=Depth_;this.Stencil=Stencil_;this.Antialias=Antialias_;this.PremultipliedAlpha=PremultipliedAlpha_;this.PreserveDrawingBuffer=PreserveDrawingBuffer_;});E=$pkg.Context=$newType(0,$kindStruct,"webgl.Context","Context","github.com/gopherjs/webgl",function(Object_,ARRAY_BUFFER_,ARRAY_BUFFER_BINDING_,ATTACHED_SHADERS_,BACK_,BLEND_,BLEND_COLOR_,BLEND_DST_ALPHA_,BLEND_DST_RGB_,BLEND_EQUATION_,BLEND_EQUATION_ALPHA_,BLEND_EQUATION_RGB_,BLEND_SRC_ALPHA_,BLEND_SRC_RGB_,BLUE_BITS_,BOOL_,BOOL_VEC2_,BOOL_VEC3_,BOOL_VEC4_,BROWSER_DEFAULT_WEBGL_,BUFFER_SIZE_,BUFFER_USAGE_,BYTE_,CCW_,CLAMP_TO_EDGE_,COLOR_ATTACHMENT0_,COLOR_BUFFER_BIT_,COLOR_CLEAR_VALUE_,COLOR_WRITEMASK_,COMPILE_STATUS_,COMPRESSED_TEXTURE_FORMATS_,CONSTANT_ALPHA_,CONSTANT_COLOR_,CONTEXT_LOST_WEBGL_,CULL_FACE_,CULL_FACE_MODE_,CURRENT_PROGRAM_,CURRENT_VERTEX_ATTRIB_,CW_,DECR_,DECR_WRAP_,DELETE_STATUS_,DEPTH_ATTACHMENT_,DEPTH_BITS_,DEPTH_BUFFER_BIT_,DEPTH_CLEAR_VALUE_,DEPTH_COMPONENT_,DEPTH_COMPONENT16_,DEPTH_FUNC_,DEPTH_RANGE_,DEPTH_STENCIL_,DEPTH_STENCIL_ATTACHMENT_,DEPTH_TEST_,DEPTH_WRITEMASK_,DITHER_,DONT_CARE_,DST_ALPHA_,DST_COLOR_,DYNAMIC_DRAW_,ELEMENT_ARRAY_BUFFER_,ELEMENT_ARRAY_BUFFER_BINDING_,EQUAL_,FASTEST_,FLOAT_,FLOAT_MAT2_,FLOAT_MAT3_,FLOAT_MAT4_,FLOAT_VEC2_,FLOAT_VEC3_,FLOAT_VEC4_,FRAGMENT_SHADER_,FRAMEBUFFER_,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_,FRAMEBUFFER_BINDING_,FRAMEBUFFER_COMPLETE_,FRAMEBUFFER_INCOMPLETE_ATTACHMENT_,FRAMEBUFFER_INCOMPLETE_DIMENSIONS_,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_,FRAMEBUFFER_UNSUPPORTED_,FRONT_,FRONT_AND_BACK_,FRONT_FACE_,FUNC_ADD_,FUNC_REVERSE_SUBTRACT_,FUNC_SUBTRACT_,GENERATE_MIPMAP_HINT_,GEQUAL_,GREATER_,GREEN_BITS_,HIGH_FLOAT_,HIGH_INT_,INCR_,INCR_WRAP_,INFO_LOG_LENGTH_,INT_,INT_VEC2_,INT_VEC3_,INT_VEC4_,INVALID_ENUM_,INVALID_FRAMEBUFFER_OPERATION_,INVALID_OPERATION_,INVALID_VALUE_,INVERT_,KEEP_,LEQUAL_,LESS_,LINEAR_,LINEAR_MIPMAP_LINEAR_,LINEAR_MIPMAP_NEAREST_,LINES_,LINE_LOOP_,LINE_STRIP_,LINE_WIDTH_,LINK_STATUS_,LOW_FLOAT_,LOW_INT_,LUMINANCE_,LUMINANCE_ALPHA_,MAX_COMBINED_TEXTURE_IMAGE_UNITS_,MAX_CUBE_MAP_TEXTURE_SIZE_,MAX_FRAGMENT_UNIFORM_VECTORS_,MAX_RENDERBUFFER_SIZE_,MAX_TEXTURE_IMAGE_UNITS_,MAX_TEXTURE_SIZE_,MAX_VARYING_VECTORS_,MAX_VERTEX_ATTRIBS_,MAX_VERTEX_TEXTURE_IMAGE_UNITS_,MAX_VERTEX_UNIFORM_VECTORS_,MAX_VIEWPORT_DIMS_,MEDIUM_FLOAT_,MEDIUM_INT_,MIRRORED_REPEAT_,NEAREST_,NEAREST_MIPMAP_LINEAR_,NEAREST_MIPMAP_NEAREST_,NEVER_,NICEST_,NONE_,NOTEQUAL_,NO_ERROR_,NUM_COMPRESSED_TEXTURE_FORMATS_,ONE_,ONE_MINUS_CONSTANT_ALPHA_,ONE_MINUS_CONSTANT_COLOR_,ONE_MINUS_DST_ALPHA_,ONE_MINUS_DST_COLOR_,ONE_MINUS_SRC_ALPHA_,ONE_MINUS_SRC_COLOR_,OUT_OF_MEMORY_,PACK_ALIGNMENT_,POINTS_,POLYGON_OFFSET_FACTOR_,POLYGON_OFFSET_FILL_,POLYGON_OFFSET_UNITS_,RED_BITS_,RENDERBUFFER_,RENDERBUFFER_ALPHA_SIZE_,RENDERBUFFER_BINDING_,RENDERBUFFER_BLUE_SIZE_,RENDERBUFFER_DEPTH_SIZE_,RENDERBUFFER_GREEN_SIZE_,RENDERBUFFER_HEIGHT_,RENDERBUFFER_INTERNAL_FORMAT_,RENDERBUFFER_RED_SIZE_,RENDERBUFFER_STENCIL_SIZE_,RENDERBUFFER_WIDTH_,RENDERER_,REPEAT_,REPLACE_,RGB_,RGB5_A1_,RGB565_,RGBA_,RGBA4_,SAMPLER_2D_,SAMPLER_CUBE_,SAMPLES_,SAMPLE_ALPHA_TO_COVERAGE_,SAMPLE_BUFFERS_,SAMPLE_COVERAGE_,SAMPLE_COVERAGE_INVERT_,SAMPLE_COVERAGE_VALUE_,SCISSOR_BOX_,SCISSOR_TEST_,SHADER_COMPILER_,SHADER_SOURCE_LENGTH_,SHADER_TYPE_,SHADING_LANGUAGE_VERSION_,SHORT_,SRC_ALPHA_,SRC_ALPHA_SATURATE_,SRC_COLOR_,STATIC_DRAW_,STENCIL_ATTACHMENT_,STENCIL_BACK_FAIL_,STENCIL_BACK_FUNC_,STENCIL_BACK_PASS_DEPTH_FAIL_,STENCIL_BACK_PASS_DEPTH_PASS_,STENCIL_BACK_REF_,STENCIL_BACK_VALUE_MASK_,STENCIL_BACK_WRITEMASK_,STENCIL_BITS_,STENCIL_BUFFER_BIT_,STENCIL_CLEAR_VALUE_,STENCIL_FAIL_,STENCIL_FUNC_,STENCIL_INDEX_,STENCIL_INDEX8_,STENCIL_PASS_DEPTH_FAIL_,STENCIL_PASS_DEPTH_PASS_,STENCIL_REF_,STENCIL_TEST_,STENCIL_VALUE_MASK_,STENCIL_WRITEMASK_,STREAM_DRAW_,SUBPIXEL_BITS_,TEXTURE_,TEXTURE0_,TEXTURE1_,TEXTURE2_,TEXTURE3_,TEXTURE4_,TEXTURE5_,TEXTURE6_,TEXTURE7_,TEXTURE8_,TEXTURE9_,TEXTURE10_,TEXTURE11_,TEXTURE12_,TEXTURE13_,TEXTURE14_,TEXTURE15_,TEXTURE16_,TEXTURE17_,TEXTURE18_,TEXTURE19_,TEXTURE20_,TEXTURE21_,TEXTURE22_,TEXTURE23_,TEXTURE24_,TEXTURE25_,TEXTURE26_,TEXTURE27_,TEXTURE28_,TEXTURE29_,TEXTURE30_,TEXTURE31_,TEXTURE_2D_,TEXTURE_BINDING_2D_,TEXTURE_BINDING_CUBE_MAP_,TEXTURE_CUBE_MAP_,TEXTURE_CUBE_MAP_NEGATIVE_X_,TEXTURE_CUBE_MAP_NEGATIVE_Y_,TEXTURE_CUBE_MAP_NEGATIVE_Z_,TEXTURE_CUBE_MAP_POSITIVE_X_,TEXTURE_CUBE_MAP_POSITIVE_Y_,TEXTURE_CUBE_MAP_POSITIVE_Z_,TEXTURE_MAG_FILTER_,TEXTURE_MIN_FILTER_,TEXTURE_WRAP_S_,TEXTURE_WRAP_T_,TRIANGLES_,TRIANGLE_FAN_,TRIANGLE_STRIP_,UNPACK_ALIGNMENT_,UNPACK_COLORSPACE_CONVERSION_WEBGL_,UNPACK_FLIP_Y_WEBGL_,UNPACK_PREMULTIPLY_ALPHA_WEBGL_,UNSIGNED_BYTE_,UNSIGNED_INT_,UNSIGNED_SHORT_,UNSIGNED_SHORT_4_4_4_4_,UNSIGNED_SHORT_5_5_5_1_,UNSIGNED_SHORT_5_6_5_,VALIDATE_STATUS_,VENDOR_,VERSION_,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_,VERTEX_ATTRIB_ARRAY_ENABLED_,VERTEX_ATTRIB_ARRAY_NORMALIZED_,VERTEX_ATTRIB_ARRAY_POINTER_,VERTEX_ATTRIB_ARRAY_SIZE_,VERTEX_ATTRIB_ARRAY_STRIDE_,VERTEX_ATTRIB_ARRAY_TYPE_,VERTEX_SHADER_,VIEWPORT_,ZERO_){this.$val=this;if(arguments.length===0){this.Object=null;this.ARRAY_BUFFER=0;this.ARRAY_BUFFER_BINDING=0;this.ATTACHED_SHADERS=0;this.BACK=0;this.BLEND=0;this.BLEND_COLOR=0;this.BLEND_DST_ALPHA=0;this.BLEND_DST_RGB=0;this.BLEND_EQUATION=0;this.BLEND_EQUATION_ALPHA=0;this.BLEND_EQUATION_RGB=0;this.BLEND_SRC_ALPHA=0;this.BLEND_SRC_RGB=0;this.BLUE_BITS=0;this.BOOL=0;this.BOOL_VEC2=0;this.BOOL_VEC3=0;this.BOOL_VEC4=0;this.BROWSER_DEFAULT_WEBGL=0;this.BUFFER_SIZE=0;this.BUFFER_USAGE=0;this.BYTE=0;this.CCW=0;this.CLAMP_TO_EDGE=0;this.COLOR_ATTACHMENT0=0;this.COLOR_BUFFER_BIT=0;this.COLOR_CLEAR_VALUE=0;this.COLOR_WRITEMASK=0;this.COMPILE_STATUS=0;this.COMPRESSED_TEXTURE_FORMATS=0;this.CONSTANT_ALPHA=0;this.CONSTANT_COLOR=0;this.CONTEXT_LOST_WEBGL=0;this.CULL_FACE=0;this.CULL_FACE_MODE=0;this.CURRENT_PROGRAM=0;this.CURRENT_VERTEX_ATTRIB=0;this.CW=0;this.DECR=0;this.DECR_WRAP=0;this.DELETE_STATUS=0;this.DEPTH_ATTACHMENT=0;this.DEPTH_BITS=0;this.DEPTH_BUFFER_BIT=0;this.DEPTH_CLEAR_VALUE=0;this.DEPTH_COMPONENT=0;this.DEPTH_COMPONENT16=0;this.DEPTH_FUNC=0;this.DEPTH_RANGE=0;this.DEPTH_STENCIL=0;this.DEPTH_STENCIL_ATTACHMENT=0;this.DEPTH_TEST=0;this.DEPTH_WRITEMASK=0;this.DITHER=0;this.DONT_CARE=0;this.DST_ALPHA=0;this.DST_COLOR=0;this.DYNAMIC_DRAW=0;this.ELEMENT_ARRAY_BUFFER=0;this.ELEMENT_ARRAY_BUFFER_BINDING=0;this.EQUAL=0;this.FASTEST=0;this.FLOAT=0;this.FLOAT_MAT2=0;this.FLOAT_MAT3=0;this.FLOAT_MAT4=0;this.FLOAT_VEC2=0;this.FLOAT_VEC3=0;this.FLOAT_VEC4=0;this.FRAGMENT_SHADER=0;this.FRAMEBUFFER=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=0;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=0;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=0;this.FRAMEBUFFER_BINDING=0;this.FRAMEBUFFER_COMPLETE=0;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=0;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=0;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=0;this.FRAMEBUFFER_UNSUPPORTED=0;this.FRONT=0;this.FRONT_AND_BACK=0;this.FRONT_FACE=0;this.FUNC_ADD=0;this.FUNC_REVERSE_SUBTRACT=0;this.FUNC_SUBTRACT=0;this.GENERATE_MIPMAP_HINT=0;this.GEQUAL=0;this.GREATER=0;this.GREEN_BITS=0;this.HIGH_FLOAT=0;this.HIGH_INT=0;this.INCR=0;this.INCR_WRAP=0;this.INFO_LOG_LENGTH=0;this.INT=0;this.INT_VEC2=0;this.INT_VEC3=0;this.INT_VEC4=0;this.INVALID_ENUM=0;this.INVALID_FRAMEBUFFER_OPERATION=0;this.INVALID_OPERATION=0;this.INVALID_VALUE=0;this.INVERT=0;this.KEEP=0;this.LEQUAL=0;this.LESS=0;this.LINEAR=0;this.LINEAR_MIPMAP_LINEAR=0;this.LINEAR_MIPMAP_NEAREST=0;this.LINES=0;this.LINE_LOOP=0;this.LINE_STRIP=0;this.LINE_WIDTH=0;this.LINK_STATUS=0;this.LOW_FLOAT=0;this.LOW_INT=0;this.LUMINANCE=0;this.LUMINANCE_ALPHA=0;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=0;this.MAX_CUBE_MAP_TEXTURE_SIZE=0;this.MAX_FRAGMENT_UNIFORM_VECTORS=0;this.MAX_RENDERBUFFER_SIZE=0;this.MAX_TEXTURE_IMAGE_UNITS=0;this.MAX_TEXTURE_SIZE=0;this.MAX_VARYING_VECTORS=0;this.MAX_VERTEX_ATTRIBS=0;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=0;this.MAX_VERTEX_UNIFORM_VECTORS=0;this.MAX_VIEWPORT_DIMS=0;this.MEDIUM_FLOAT=0;this.MEDIUM_INT=0;this.MIRRORED_REPEAT=0;this.NEAREST=0;this.NEAREST_MIPMAP_LINEAR=0;this.NEAREST_MIPMAP_NEAREST=0;this.NEVER=0;this.NICEST=0;this.NONE=0;this.NOTEQUAL=0;this.NO_ERROR=0;this.NUM_COMPRESSED_TEXTURE_FORMATS=0;this.ONE=0;this.ONE_MINUS_CONSTANT_ALPHA=0;this.ONE_MINUS_CONSTANT_COLOR=0;this.ONE_MINUS_DST_ALPHA=0;this.ONE_MINUS_DST_COLOR=0;this.ONE_MINUS_SRC_ALPHA=0;this.ONE_MINUS_SRC_COLOR=0;this.OUT_OF_MEMORY=0;this.PACK_ALIGNMENT=0;this.POINTS=0;this.POLYGON_OFFSET_FACTOR=0;this.POLYGON_OFFSET_FILL=0;this.POLYGON_OFFSET_UNITS=0;this.RED_BITS=0;this.RENDERBUFFER=0;this.RENDERBUFFER_ALPHA_SIZE=0;this.RENDERBUFFER_BINDING=0;this.RENDERBUFFER_BLUE_SIZE=0;this.RENDERBUFFER_DEPTH_SIZE=0;this.RENDERBUFFER_GREEN_SIZE=0;this.RENDERBUFFER_HEIGHT=0;this.RENDERBUFFER_INTERNAL_FORMAT=0;this.RENDERBUFFER_RED_SIZE=0;this.RENDERBUFFER_STENCIL_SIZE=0;this.RENDERBUFFER_WIDTH=0;this.RENDERER=0;this.REPEAT=0;this.REPLACE=0;this.RGB=0;this.RGB5_A1=0;this.RGB565=0;this.RGBA=0;this.RGBA4=0;this.SAMPLER_2D=0;this.SAMPLER_CUBE=0;this.SAMPLES=0;this.SAMPLE_ALPHA_TO_COVERAGE=0;this.SAMPLE_BUFFERS=0;this.SAMPLE_COVERAGE=0;this.SAMPLE_COVERAGE_INVERT=0;this.SAMPLE_COVERAGE_VALUE=0;this.SCISSOR_BOX=0;this.SCISSOR_TEST=0;this.SHADER_COMPILER=0;this.SHADER_SOURCE_LENGTH=0;this.SHADER_TYPE=0;this.SHADING_LANGUAGE_VERSION=0;this.SHORT=0;this.SRC_ALPHA=0;this.SRC_ALPHA_SATURATE=0;this.SRC_COLOR=0;this.STATIC_DRAW=0;this.STENCIL_ATTACHMENT=0;this.STENCIL_BACK_FAIL=0;this.STENCIL_BACK_FUNC=0;this.STENCIL_BACK_PASS_DEPTH_FAIL=0;this.STENCIL_BACK_PASS_DEPTH_PASS=0;this.STENCIL_BACK_REF=0;this.STENCIL_BACK_VALUE_MASK=0;this.STENCIL_BACK_WRITEMASK=0;this.STENCIL_BITS=0;this.STENCIL_BUFFER_BIT=0;this.STENCIL_CLEAR_VALUE=0;this.STENCIL_FAIL=0;this.STENCIL_FUNC=0;this.STENCIL_INDEX=0;this.STENCIL_INDEX8=0;this.STENCIL_PASS_DEPTH_FAIL=0;this.STENCIL_PASS_DEPTH_PASS=0;this.STENCIL_REF=0;this.STENCIL_TEST=0;this.STENCIL_VALUE_MASK=0;this.STENCIL_WRITEMASK=0;this.STREAM_DRAW=0;this.SUBPIXEL_BITS=0;this.TEXTURE=0;this.TEXTURE0=0;this.TEXTURE1=0;this.TEXTURE2=0;this.TEXTURE3=0;this.TEXTURE4=0;this.TEXTURE5=0;this.TEXTURE6=0;this.TEXTURE7=0;this.TEXTURE8=0;this.TEXTURE9=0;this.TEXTURE10=0;this.TEXTURE11=0;this.TEXTURE12=0;this.TEXTURE13=0;this.TEXTURE14=0;this.TEXTURE15=0;this.TEXTURE16=0;this.TEXTURE17=0;this.TEXTURE18=0;this.TEXTURE19=0;this.TEXTURE20=0;this.TEXTURE21=0;this.TEXTURE22=0;this.TEXTURE23=0;this.TEXTURE24=0;this.TEXTURE25=0;this.TEXTURE26=0;this.TEXTURE27=0;this.TEXTURE28=0;this.TEXTURE29=0;this.TEXTURE30=0;this.TEXTURE31=0;this.TEXTURE_2D=0;this.TEXTURE_BINDING_2D=0;this.TEXTURE_BINDING_CUBE_MAP=0;this.TEXTURE_CUBE_MAP=0;this.TEXTURE_CUBE_MAP_NEGATIVE_X=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=0;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=0;this.TEXTURE_CUBE_MAP_POSITIVE_X=0;this.TEXTURE_CUBE_MAP_POSITIVE_Y=0;this.TEXTURE_CUBE_MAP_POSITIVE_Z=0;this.TEXTURE_MAG_FILTER=0;this.TEXTURE_MIN_FILTER=0;this.TEXTURE_WRAP_S=0;this.TEXTURE_WRAP_T=0;this.TRIANGLES=0;this.TRIANGLE_FAN=0;this.TRIANGLE_STRIP=0;this.UNPACK_ALIGNMENT=0;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=0;this.UNPACK_FLIP_Y_WEBGL=0;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=0;this.UNSIGNED_BYTE=0;this.UNSIGNED_INT=0;this.UNSIGNED_SHORT=0;this.UNSIGNED_SHORT_4_4_4_4=0;this.UNSIGNED_SHORT_5_5_5_1=0;this.UNSIGNED_SHORT_5_6_5=0;this.VALIDATE_STATUS=0;this.VENDOR=0;this.VERSION=0;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=0;this.VERTEX_ATTRIB_ARRAY_ENABLED=0;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=0;this.VERTEX_ATTRIB_ARRAY_POINTER=0;this.VERTEX_ATTRIB_ARRAY_SIZE=0;this.VERTEX_ATTRIB_ARRAY_STRIDE=0;this.VERTEX_ATTRIB_ARRAY_TYPE=0;this.VERTEX_SHADER=0;this.VIEWPORT=0;this.ZERO=0;return;}this.Object=Object_;this.ARRAY_BUFFER=ARRAY_BUFFER_;this.ARRAY_BUFFER_BINDING=ARRAY_BUFFER_BINDING_;this.ATTACHED_SHADERS=ATTACHED_SHADERS_;this.BACK=BACK_;this.BLEND=BLEND_;this.BLEND_COLOR=BLEND_COLOR_;this.BLEND_DST_ALPHA=BLEND_DST_ALPHA_;this.BLEND_DST_RGB=BLEND_DST_RGB_;this.BLEND_EQUATION=BLEND_EQUATION_;this.BLEND_EQUATION_ALPHA=BLEND_EQUATION_ALPHA_;this.BLEND_EQUATION_RGB=BLEND_EQUATION_RGB_;this.BLEND_SRC_ALPHA=BLEND_SRC_ALPHA_;this.BLEND_SRC_RGB=BLEND_SRC_RGB_;this.BLUE_BITS=BLUE_BITS_;this.BOOL=BOOL_;this.BOOL_VEC2=BOOL_VEC2_;this.BOOL_VEC3=BOOL_VEC3_;this.BOOL_VEC4=BOOL_VEC4_;this.BROWSER_DEFAULT_WEBGL=BROWSER_DEFAULT_WEBGL_;this.BUFFER_SIZE=BUFFER_SIZE_;this.BUFFER_USAGE=BUFFER_USAGE_;this.BYTE=BYTE_;this.CCW=CCW_;this.CLAMP_TO_EDGE=CLAMP_TO_EDGE_;this.COLOR_ATTACHMENT0=COLOR_ATTACHMENT0_;this.COLOR_BUFFER_BIT=COLOR_BUFFER_BIT_;this.COLOR_CLEAR_VALUE=COLOR_CLEAR_VALUE_;this.COLOR_WRITEMASK=COLOR_WRITEMASK_;this.COMPILE_STATUS=COMPILE_STATUS_;this.COMPRESSED_TEXTURE_FORMATS=COMPRESSED_TEXTURE_FORMATS_;this.CONSTANT_ALPHA=CONSTANT_ALPHA_;this.CONSTANT_COLOR=CONSTANT_COLOR_;this.CONTEXT_LOST_WEBGL=CONTEXT_LOST_WEBGL_;this.CULL_FACE=CULL_FACE_;this.CULL_FACE_MODE=CULL_FACE_MODE_;this.CURRENT_PROGRAM=CURRENT_PROGRAM_;this.CURRENT_VERTEX_ATTRIB=CURRENT_VERTEX_ATTRIB_;this.CW=CW_;this.DECR=DECR_;this.DECR_WRAP=DECR_WRAP_;this.DELETE_STATUS=DELETE_STATUS_;this.DEPTH_ATTACHMENT=DEPTH_ATTACHMENT_;this.DEPTH_BITS=DEPTH_BITS_;this.DEPTH_BUFFER_BIT=DEPTH_BUFFER_BIT_;this.DEPTH_CLEAR_VALUE=DEPTH_CLEAR_VALUE_;this.DEPTH_COMPONENT=DEPTH_COMPONENT_;this.DEPTH_COMPONENT16=DEPTH_COMPONENT16_;this.DEPTH_FUNC=DEPTH_FUNC_;this.DEPTH_RANGE=DEPTH_RANGE_;this.DEPTH_STENCIL=DEPTH_STENCIL_;this.DEPTH_STENCIL_ATTACHMENT=DEPTH_STENCIL_ATTACHMENT_;this.DEPTH_TEST=DEPTH_TEST_;this.DEPTH_WRITEMASK=DEPTH_WRITEMASK_;this.DITHER=DITHER_;this.DONT_CARE=DONT_CARE_;this.DST_ALPHA=DST_ALPHA_;this.DST_COLOR=DST_COLOR_;this.DYNAMIC_DRAW=DYNAMIC_DRAW_;this.ELEMENT_ARRAY_BUFFER=ELEMENT_ARRAY_BUFFER_;this.ELEMENT_ARRAY_BUFFER_BINDING=ELEMENT_ARRAY_BUFFER_BINDING_;this.EQUAL=EQUAL_;this.FASTEST=FASTEST_;this.FLOAT=FLOAT_;this.FLOAT_MAT2=FLOAT_MAT2_;this.FLOAT_MAT3=FLOAT_MAT3_;this.FLOAT_MAT4=FLOAT_MAT4_;this.FLOAT_VEC2=FLOAT_VEC2_;this.FLOAT_VEC3=FLOAT_VEC3_;this.FLOAT_VEC4=FLOAT_VEC4_;this.FRAGMENT_SHADER=FRAGMENT_SHADER_;this.FRAMEBUFFER=FRAMEBUFFER_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME=FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_;this.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE=FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE=FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_;this.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL=FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_;this.FRAMEBUFFER_BINDING=FRAMEBUFFER_BINDING_;this.FRAMEBUFFER_COMPLETE=FRAMEBUFFER_COMPLETE_;this.FRAMEBUFFER_INCOMPLETE_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_ATTACHMENT_;this.FRAMEBUFFER_INCOMPLETE_DIMENSIONS=FRAMEBUFFER_INCOMPLETE_DIMENSIONS_;this.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT=FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_;this.FRAMEBUFFER_UNSUPPORTED=FRAMEBUFFER_UNSUPPORTED_;this.FRONT=FRONT_;this.FRONT_AND_BACK=FRONT_AND_BACK_;this.FRONT_FACE=FRONT_FACE_;this.FUNC_ADD=FUNC_ADD_;this.FUNC_REVERSE_SUBTRACT=FUNC_REVERSE_SUBTRACT_;this.FUNC_SUBTRACT=FUNC_SUBTRACT_;this.GENERATE_MIPMAP_HINT=GENERATE_MIPMAP_HINT_;this.GEQUAL=GEQUAL_;this.GREATER=GREATER_;this.GREEN_BITS=GREEN_BITS_;this.HIGH_FLOAT=HIGH_FLOAT_;this.HIGH_INT=HIGH_INT_;this.INCR=INCR_;this.INCR_WRAP=INCR_WRAP_;this.INFO_LOG_LENGTH=INFO_LOG_LENGTH_;this.INT=INT_;this.INT_VEC2=INT_VEC2_;this.INT_VEC3=INT_VEC3_;this.INT_VEC4=INT_VEC4_;this.INVALID_ENUM=INVALID_ENUM_;this.INVALID_FRAMEBUFFER_OPERATION=INVALID_FRAMEBUFFER_OPERATION_;this.INVALID_OPERATION=INVALID_OPERATION_;this.INVALID_VALUE=INVALID_VALUE_;this.INVERT=INVERT_;this.KEEP=KEEP_;this.LEQUAL=LEQUAL_;this.LESS=LESS_;this.LINEAR=LINEAR_;this.LINEAR_MIPMAP_LINEAR=LINEAR_MIPMAP_LINEAR_;this.LINEAR_MIPMAP_NEAREST=LINEAR_MIPMAP_NEAREST_;this.LINES=LINES_;this.LINE_LOOP=LINE_LOOP_;this.LINE_STRIP=LINE_STRIP_;this.LINE_WIDTH=LINE_WIDTH_;this.LINK_STATUS=LINK_STATUS_;this.LOW_FLOAT=LOW_FLOAT_;this.LOW_INT=LOW_INT_;this.LUMINANCE=LUMINANCE_;this.LUMINANCE_ALPHA=LUMINANCE_ALPHA_;this.MAX_COMBINED_TEXTURE_IMAGE_UNITS=MAX_COMBINED_TEXTURE_IMAGE_UNITS_;this.MAX_CUBE_MAP_TEXTURE_SIZE=MAX_CUBE_MAP_TEXTURE_SIZE_;this.MAX_FRAGMENT_UNIFORM_VECTORS=MAX_FRAGMENT_UNIFORM_VECTORS_;this.MAX_RENDERBUFFER_SIZE=MAX_RENDERBUFFER_SIZE_;this.MAX_TEXTURE_IMAGE_UNITS=MAX_TEXTURE_IMAGE_UNITS_;this.MAX_TEXTURE_SIZE=MAX_TEXTURE_SIZE_;this.MAX_VARYING_VECTORS=MAX_VARYING_VECTORS_;this.MAX_VERTEX_ATTRIBS=MAX_VERTEX_ATTRIBS_;this.MAX_VERTEX_TEXTURE_IMAGE_UNITS=MAX_VERTEX_TEXTURE_IMAGE_UNITS_;this.MAX_VERTEX_UNIFORM_VECTORS=MAX_VERTEX_UNIFORM_VECTORS_;this.MAX_VIEWPORT_DIMS=MAX_VIEWPORT_DIMS_;this.MEDIUM_FLOAT=MEDIUM_FLOAT_;this.MEDIUM_INT=MEDIUM_INT_;this.MIRRORED_REPEAT=MIRRORED_REPEAT_;this.NEAREST=NEAREST_;this.NEAREST_MIPMAP_LINEAR=NEAREST_MIPMAP_LINEAR_;this.NEAREST_MIPMAP_NEAREST=NEAREST_MIPMAP_NEAREST_;this.NEVER=NEVER_;this.NICEST=NICEST_;this.NONE=NONE_;this.NOTEQUAL=NOTEQUAL_;this.NO_ERROR=NO_ERROR_;this.NUM_COMPRESSED_TEXTURE_FORMATS=NUM_COMPRESSED_TEXTURE_FORMATS_;this.ONE=ONE_;this.ONE_MINUS_CONSTANT_ALPHA=ONE_MINUS_CONSTANT_ALPHA_;this.ONE_MINUS_CONSTANT_COLOR=ONE_MINUS_CONSTANT_COLOR_;this.ONE_MINUS_DST_ALPHA=ONE_MINUS_DST_ALPHA_;this.ONE_MINUS_DST_COLOR=ONE_MINUS_DST_COLOR_;this.ONE_MINUS_SRC_ALPHA=ONE_MINUS_SRC_ALPHA_;this.ONE_MINUS_SRC_COLOR=ONE_MINUS_SRC_COLOR_;this.OUT_OF_MEMORY=OUT_OF_MEMORY_;this.PACK_ALIGNMENT=PACK_ALIGNMENT_;this.POINTS=POINTS_;this.POLYGON_OFFSET_FACTOR=POLYGON_OFFSET_FACTOR_;this.POLYGON_OFFSET_FILL=POLYGON_OFFSET_FILL_;this.POLYGON_OFFSET_UNITS=POLYGON_OFFSET_UNITS_;this.RED_BITS=RED_BITS_;this.RENDERBUFFER=RENDERBUFFER_;this.RENDERBUFFER_ALPHA_SIZE=RENDERBUFFER_ALPHA_SIZE_;this.RENDERBUFFER_BINDING=RENDERBUFFER_BINDING_;this.RENDERBUFFER_BLUE_SIZE=RENDERBUFFER_BLUE_SIZE_;this.RENDERBUFFER_DEPTH_SIZE=RENDERBUFFER_DEPTH_SIZE_;this.RENDERBUFFER_GREEN_SIZE=RENDERBUFFER_GREEN_SIZE_;this.RENDERBUFFER_HEIGHT=RENDERBUFFER_HEIGHT_;this.RENDERBUFFER_INTERNAL_FORMAT=RENDERBUFFER_INTERNAL_FORMAT_;this.RENDERBUFFER_RED_SIZE=RENDERBUFFER_RED_SIZE_;this.RENDERBUFFER_STENCIL_SIZE=RENDERBUFFER_STENCIL_SIZE_;this.RENDERBUFFER_WIDTH=RENDERBUFFER_WIDTH_;this.RENDERER=RENDERER_;this.REPEAT=REPEAT_;this.REPLACE=REPLACE_;this.RGB=RGB_;this.RGB5_A1=RGB5_A1_;this.RGB565=RGB565_;this.RGBA=RGBA_;this.RGBA4=RGBA4_;this.SAMPLER_2D=SAMPLER_2D_;this.SAMPLER_CUBE=SAMPLER_CUBE_;this.SAMPLES=SAMPLES_;this.SAMPLE_ALPHA_TO_COVERAGE=SAMPLE_ALPHA_TO_COVERAGE_;this.SAMPLE_BUFFERS=SAMPLE_BUFFERS_;this.SAMPLE_COVERAGE=SAMPLE_COVERAGE_;this.SAMPLE_COVERAGE_INVERT=SAMPLE_COVERAGE_INVERT_;this.SAMPLE_COVERAGE_VALUE=SAMPLE_COVERAGE_VALUE_;this.SCISSOR_BOX=SCISSOR_BOX_;this.SCISSOR_TEST=SCISSOR_TEST_;this.SHADER_COMPILER=SHADER_COMPILER_;this.SHADER_SOURCE_LENGTH=SHADER_SOURCE_LENGTH_;this.SHADER_TYPE=SHADER_TYPE_;this.SHADING_LANGUAGE_VERSION=SHADING_LANGUAGE_VERSION_;this.SHORT=SHORT_;this.SRC_ALPHA=SRC_ALPHA_;this.SRC_ALPHA_SATURATE=SRC_ALPHA_SATURATE_;this.SRC_COLOR=SRC_COLOR_;this.STATIC_DRAW=STATIC_DRAW_;this.STENCIL_ATTACHMENT=STENCIL_ATTACHMENT_;this.STENCIL_BACK_FAIL=STENCIL_BACK_FAIL_;this.STENCIL_BACK_FUNC=STENCIL_BACK_FUNC_;this.STENCIL_BACK_PASS_DEPTH_FAIL=STENCIL_BACK_PASS_DEPTH_FAIL_;this.STENCIL_BACK_PASS_DEPTH_PASS=STENCIL_BACK_PASS_DEPTH_PASS_;this.STENCIL_BACK_REF=STENCIL_BACK_REF_;this.STENCIL_BACK_VALUE_MASK=STENCIL_BACK_VALUE_MASK_;this.STENCIL_BACK_WRITEMASK=STENCIL_BACK_WRITEMASK_;this.STENCIL_BITS=STENCIL_BITS_;this.STENCIL_BUFFER_BIT=STENCIL_BUFFER_BIT_;this.STENCIL_CLEAR_VALUE=STENCIL_CLEAR_VALUE_;this.STENCIL_FAIL=STENCIL_FAIL_;this.STENCIL_FUNC=STENCIL_FUNC_;this.STENCIL_INDEX=STENCIL_INDEX_;this.STENCIL_INDEX8=STENCIL_INDEX8_;this.STENCIL_PASS_DEPTH_FAIL=STENCIL_PASS_DEPTH_FAIL_;this.STENCIL_PASS_DEPTH_PASS=STENCIL_PASS_DEPTH_PASS_;this.STENCIL_REF=STENCIL_REF_;this.STENCIL_TEST=STENCIL_TEST_;this.STENCIL_VALUE_MASK=STENCIL_VALUE_MASK_;this.STENCIL_WRITEMASK=STENCIL_WRITEMASK_;this.STREAM_DRAW=STREAM_DRAW_;this.SUBPIXEL_BITS=SUBPIXEL_BITS_;this.TEXTURE=TEXTURE_;this.TEXTURE0=TEXTURE0_;this.TEXTURE1=TEXTURE1_;this.TEXTURE2=TEXTURE2_;this.TEXTURE3=TEXTURE3_;this.TEXTURE4=TEXTURE4_;this.TEXTURE5=TEXTURE5_;this.TEXTURE6=TEXTURE6_;this.TEXTURE7=TEXTURE7_;this.TEXTURE8=TEXTURE8_;this.TEXTURE9=TEXTURE9_;this.TEXTURE10=TEXTURE10_;this.TEXTURE11=TEXTURE11_;this.TEXTURE12=TEXTURE12_;this.TEXTURE13=TEXTURE13_;this.TEXTURE14=TEXTURE14_;this.TEXTURE15=TEXTURE15_;this.TEXTURE16=TEXTURE16_;this.TEXTURE17=TEXTURE17_;this.TEXTURE18=TEXTURE18_;this.TEXTURE19=TEXTURE19_;this.TEXTURE20=TEXTURE20_;this.TEXTURE21=TEXTURE21_;this.TEXTURE22=TEXTURE22_;this.TEXTURE23=TEXTURE23_;this.TEXTURE24=TEXTURE24_;this.TEXTURE25=TEXTURE25_;this.TEXTURE26=TEXTURE26_;this.TEXTURE27=TEXTURE27_;this.TEXTURE28=TEXTURE28_;this.TEXTURE29=TEXTURE29_;this.TEXTURE30=TEXTURE30_;this.TEXTURE31=TEXTURE31_;this.TEXTURE_2D=TEXTURE_2D_;this.TEXTURE_BINDING_2D=TEXTURE_BINDING_2D_;this.TEXTURE_BINDING_CUBE_MAP=TEXTURE_BINDING_CUBE_MAP_;this.TEXTURE_CUBE_MAP=TEXTURE_CUBE_MAP_;this.TEXTURE_CUBE_MAP_NEGATIVE_X=TEXTURE_CUBE_MAP_NEGATIVE_X_;this.TEXTURE_CUBE_MAP_NEGATIVE_Y=TEXTURE_CUBE_MAP_NEGATIVE_Y_;this.TEXTURE_CUBE_MAP_NEGATIVE_Z=TEXTURE_CUBE_MAP_NEGATIVE_Z_;this.TEXTURE_CUBE_MAP_POSITIVE_X=TEXTURE_CUBE_MAP_POSITIVE_X_;this.TEXTURE_CUBE_MAP_POSITIVE_Y=TEXTURE_CUBE_MAP_POSITIVE_Y_;this.TEXTURE_CUBE_MAP_POSITIVE_Z=TEXTURE_CUBE_MAP_POSITIVE_Z_;this.TEXTURE_MAG_FILTER=TEXTURE_MAG_FILTER_;this.TEXTURE_MIN_FILTER=TEXTURE_MIN_FILTER_;this.TEXTURE_WRAP_S=TEXTURE_WRAP_S_;this.TEXTURE_WRAP_T=TEXTURE_WRAP_T_;this.TRIANGLES=TRIANGLES_;this.TRIANGLE_FAN=TRIANGLE_FAN_;this.TRIANGLE_STRIP=TRIANGLE_STRIP_;this.UNPACK_ALIGNMENT=UNPACK_ALIGNMENT_;this.UNPACK_COLORSPACE_CONVERSION_WEBGL=UNPACK_COLORSPACE_CONVERSION_WEBGL_;this.UNPACK_FLIP_Y_WEBGL=UNPACK_FLIP_Y_WEBGL_;this.UNPACK_PREMULTIPLY_ALPHA_WEBGL=UNPACK_PREMULTIPLY_ALPHA_WEBGL_;this.UNSIGNED_BYTE=UNSIGNED_BYTE_;this.UNSIGNED_INT=UNSIGNED_INT_;this.UNSIGNED_SHORT=UNSIGNED_SHORT_;this.UNSIGNED_SHORT_4_4_4_4=UNSIGNED_SHORT_4_4_4_4_;this.UNSIGNED_SHORT_5_5_5_1=UNSIGNED_SHORT_5_5_5_1_;this.UNSIGNED_SHORT_5_6_5=UNSIGNED_SHORT_5_6_5_;this.VALIDATE_STATUS=VALIDATE_STATUS_;this.VENDOR=VENDOR_;this.VERSION=VERSION_;this.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING=VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_;this.VERTEX_ATTRIB_ARRAY_ENABLED=VERTEX_ATTRIB_ARRAY_ENABLED_;this.VERTEX_ATTRIB_ARRAY_NORMALIZED=VERTEX_ATTRIB_ARRAY_NORMALIZED_;this.VERTEX_ATTRIB_ARRAY_POINTER=VERTEX_ATTRIB_ARRAY_POINTER_;this.VERTEX_ATTRIB_ARRAY_SIZE=VERTEX_ATTRIB_ARRAY_SIZE_;this.VERTEX_ATTRIB_ARRAY_STRIDE=VERTEX_ATTRIB_ARRAY_STRIDE_;this.VERTEX_ATTRIB_ARRAY_TYPE=VERTEX_ATTRIB_ARRAY_TYPE_;this.VERTEX_SHADER=VERTEX_SHADER_;this.VIEWPORT=VIEWPORT_;this.ZERO=ZERO_;});G=$ptrType(E);H=$ptrType(C);I=$mapType($String,$Bool);J=$ptrType(B.Object);K=$sliceType(J);L=$sliceType($String);M=$sliceType($Float32);D=function(){var $ptr;return new C.ptr(true,true,false,true,true,false);};$pkg.DefaultAttributes=D;F=function(a,b){var $ptr,a,b,c,d,e;if($global.WebGLRenderingContext===undefined){return[G.nil,A.New("Your browser doesn't appear to support webgl.")];}if(b===H.nil){b=D();}c=$makeMap($String.keyFor,[{k:"alpha",v:b.Alpha},{k:"depth",v:b.Depth},{k:"stencil",v:b.Stencil},{k:"antialias",v:b.Antialias},{k:"premultipliedAlpha",v:b.PremultipliedAlpha},{k:"preserveDrawingBuffer",v:b.PreserveDrawingBuffer}]);d=a.getContext($externalize("webgl",$String),$externalize(c,I));if(d===null){d=a.getContext($externalize("experimental-webgl",$String),$externalize(c,I));if(d===null){return[G.nil,A.New("Creating a webgl context has failed.")];}}e=new E.ptr(null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);e.Object=d;return[e,$ifaceNil];};$pkg.NewContext=F;E.ptr.prototype.GetContextAttributes=function(){var $ptr,a,b;a=this;b=a.Object.getContextAttributes();return new C.ptr(!!(b.alpha),!!(b.depth),!!(b.stencil),!!(b.antialias),!!(b.premultipliedAlpha),!!(b.preservedDrawingBuffer));};E.prototype.GetContextAttributes=function(){return this.$val.GetContextAttributes();};E.ptr.prototype.ActiveTexture=function(a){var $ptr,a,b;b=this;b.Object.activeTexture(a);};E.prototype.ActiveTexture=function(a){return this.$val.ActiveTexture(a);};E.ptr.prototype.AttachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.attachShader(a,b);};E.prototype.AttachShader=function(a,b){return this.$val.AttachShader(a,b);};E.ptr.prototype.BindAttribLocation=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bindAttribLocation(a,b,$externalize(c,$String));};E.prototype.BindAttribLocation=function(a,b,c){return this.$val.BindAttribLocation(a,b,c);};E.ptr.prototype.BindBuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindBuffer(a,b);};E.prototype.BindBuffer=function(a,b){return this.$val.BindBuffer(a,b);};E.ptr.prototype.BindFramebuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindFramebuffer(a,b);};E.prototype.BindFramebuffer=function(a,b){return this.$val.BindFramebuffer(a,b);};E.ptr.prototype.BindRenderbuffer=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindRenderbuffer(a,b);};E.prototype.BindRenderbuffer=function(a,b){return this.$val.BindRenderbuffer(a,b);};E.ptr.prototype.BindTexture=function(a,b){var $ptr,a,b,c;c=this;c.Object.bindTexture(a,b);};E.prototype.BindTexture=function(a,b){return this.$val.BindTexture(a,b);};E.ptr.prototype.BlendColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendColor(a,b,c,d);};E.prototype.BlendColor=function(a,b,c,d){return this.$val.BlendColor(a,b,c,d);};E.ptr.prototype.BlendEquation=function(a){var $ptr,a,b;b=this;b.Object.blendEquation(a);};E.prototype.BlendEquation=function(a){return this.$val.BlendEquation(a);};E.ptr.prototype.BlendEquationSeparate=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendEquationSeparate(a,b);};E.prototype.BlendEquationSeparate=function(a,b){return this.$val.BlendEquationSeparate(a,b);};E.ptr.prototype.BlendFunc=function(a,b){var $ptr,a,b,c;c=this;c.Object.blendFunc(a,b);};E.prototype.BlendFunc=function(a,b){return this.$val.BlendFunc(a,b);};E.ptr.prototype.BlendFuncSeparate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.blendFuncSeparate(a,b,c,d);};E.prototype.BlendFuncSeparate=function(a,b,c,d){return this.$val.BlendFuncSeparate(a,b,c,d);};E.ptr.prototype.BufferData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferData(a,$externalize(b,$emptyInterface),c);};E.prototype.BufferData=function(a,b,c){return this.$val.BufferData(a,b,c);};E.ptr.prototype.BufferSubData=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.bufferSubData(a,b,$externalize(c,$emptyInterface));};E.prototype.BufferSubData=function(a,b,c){return this.$val.BufferSubData(a,b,c);};E.ptr.prototype.CheckFramebufferStatus=function(a){var $ptr,a,b;b=this;return $parseInt(b.Object.checkFramebufferStatus(a))>>0;};E.prototype.CheckFramebufferStatus=function(a){return this.$val.CheckFramebufferStatus(a);};E.ptr.prototype.Clear=function(a){var $ptr,a,b;b=this;b.Object.clear(a);};E.prototype.Clear=function(a){return this.$val.Clear(a);};E.ptr.prototype.ClearColor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.clearColor(a,b,c,d);};E.prototype.ClearColor=function(a,b,c,d){return this.$val.ClearColor(a,b,c,d);};E.ptr.prototype.ClearDepth=function(a){var $ptr,a,b;b=this;b.Object.clearDepth(a);};E.prototype.ClearDepth=function(a){return this.$val.ClearDepth(a);};E.ptr.prototype.ClearStencil=function(a){var $ptr,a,b;b=this;b.Object.clearStencil(a);};E.prototype.ClearStencil=function(a){return this.$val.ClearStencil(a);};E.ptr.prototype.ColorMask=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.colorMask($externalize(a,$Bool),$externalize(b,$Bool),$externalize(c,$Bool),$externalize(d,$Bool));};E.prototype.ColorMask=function(a,b,c,d){return this.$val.ColorMask(a,b,c,d);};E.ptr.prototype.CompileShader=function(a){var $ptr,a,b;b=this;b.Object.compileShader(a);};E.prototype.CompileShader=function(a){return this.$val.CompileShader(a);};E.ptr.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){var $ptr,a,b,c,d,e,f,g,h,i;i=this;i.Object.copyTexSubImage2D(a,b,c,d,e,f,g,h);};E.prototype.CopyTexSubImage2D=function(a,b,c,d,e,f,g,h){return this.$val.CopyTexSubImage2D(a,b,c,d,e,f,g,h);};E.ptr.prototype.CreateBuffer=function(){var $ptr,a;a=this;return a.Object.createBuffer();};E.prototype.CreateBuffer=function(){return this.$val.CreateBuffer();};E.ptr.prototype.CreateFramebuffer=function(){var $ptr,a;a=this;return a.Object.createFramebuffer();};E.prototype.CreateFramebuffer=function(){return this.$val.CreateFramebuffer();};E.ptr.prototype.CreateProgram=function(){var $ptr,a;a=this;return a.Object.createProgram();};E.prototype.CreateProgram=function(){return this.$val.CreateProgram();};E.ptr.prototype.CreateRenderbuffer=function(){var $ptr,a;a=this;return a.Object.createRenderbuffer();};E.prototype.CreateRenderbuffer=function(){return this.$val.CreateRenderbuffer();};E.ptr.prototype.CreateShader=function(a){var $ptr,a,b;b=this;return b.Object.createShader(a);};E.prototype.CreateShader=function(a){return this.$val.CreateShader(a);};E.ptr.prototype.CreateTexture=function(){var $ptr,a;a=this;return a.Object.createTexture();};E.prototype.CreateTexture=function(){return this.$val.CreateTexture();};E.ptr.prototype.CullFace=function(a){var $ptr,a,b;b=this;b.Object.cullFace(a);};E.prototype.CullFace=function(a){return this.$val.CullFace(a);};E.ptr.prototype.DeleteBuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteBuffer(a);};E.prototype.DeleteBuffer=function(a){return this.$val.DeleteBuffer(a);};E.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteFramebuffer(a);};E.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};E.ptr.prototype.DeleteProgram=function(a){var $ptr,a,b;b=this;b.Object.deleteProgram(a);};E.prototype.DeleteProgram=function(a){return this.$val.DeleteProgram(a);};E.ptr.prototype.DeleteRenderbuffer=function(a){var $ptr,a,b;b=this;b.Object.deleteRenderbuffer(a);};E.prototype.DeleteRenderbuffer=function(a){return this.$val.DeleteRenderbuffer(a);};E.ptr.prototype.DeleteShader=function(a){var $ptr,a,b;b=this;b.Object.deleteShader(a);};E.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};E.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b;b=this;b.Object.deleteTexture(a);};E.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};E.ptr.prototype.DepthFunc=function(a){var $ptr,a,b;b=this;b.Object.depthFunc(a);};E.prototype.DepthFunc=function(a){return this.$val.DepthFunc(a);};E.ptr.prototype.DepthMask=function(a){var $ptr,a,b;b=this;b.Object.depthMask($externalize(a,$Bool));};E.prototype.DepthMask=function(a){return this.$val.DepthMask(a);};E.ptr.prototype.DepthRange=function(a,b){var $ptr,a,b,c;c=this;c.Object.depthRange(a,b);};E.prototype.DepthRange=function(a,b){return this.$val.DepthRange(a,b);};E.ptr.prototype.DetachShader=function(a,b){var $ptr,a,b,c;c=this;c.Object.detachShader(a,b);};E.prototype.DetachShader=function(a,b){return this.$val.DetachShader(a,b);};E.ptr.prototype.Disable=function(a){var $ptr,a,b;b=this;b.Object.disable(a);};E.prototype.Disable=function(a){return this.$val.Disable(a);};E.ptr.prototype.DisableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.disableVertexAttribArray(a);};E.prototype.DisableVertexAttribArray=function(a){return this.$val.DisableVertexAttribArray(a);};E.ptr.prototype.DrawArrays=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.drawArrays(a,b,c);};E.prototype.DrawArrays=function(a,b,c){return this.$val.DrawArrays(a,b,c);};E.ptr.prototype.DrawElements=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.drawElements(a,b,c,d);};E.prototype.DrawElements=function(a,b,c,d){return this.$val.DrawElements(a,b,c,d);};E.ptr.prototype.Enable=function(a){var $ptr,a,b;b=this;b.Object.enable(a);};E.prototype.Enable=function(a){return this.$val.Enable(a);};E.ptr.prototype.EnableVertexAttribArray=function(a){var $ptr,a,b;b=this;b.Object.enableVertexAttribArray(a);};E.prototype.EnableVertexAttribArray=function(a){return this.$val.EnableVertexAttribArray(a);};E.ptr.prototype.Finish=function(){var $ptr,a;a=this;a.Object.finish();};E.prototype.Finish=function(){return this.$val.Finish();};E.ptr.prototype.Flush=function(){var $ptr,a;a=this;a.Object.flush();};E.prototype.Flush=function(){return this.$val.Flush();};E.ptr.prototype.FrameBufferRenderBuffer=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.framebufferRenderBuffer(a,b,c,d);};E.prototype.FrameBufferRenderBuffer=function(a,b,c,d){return this.$val.FrameBufferRenderBuffer(a,b,c,d);};E.ptr.prototype.FramebufferTexture2D=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.framebufferTexture2D(a,b,c,d,e);};E.prototype.FramebufferTexture2D=function(a,b,c,d,e){return this.$val.FramebufferTexture2D(a,b,c,d,e);};E.ptr.prototype.FrontFace=function(a){var $ptr,a,b;b=this;b.Object.frontFace(a);};E.prototype.FrontFace=function(a){return this.$val.FrontFace(a);};E.ptr.prototype.GenerateMipmap=function(a){var $ptr,a,b;b=this;b.Object.generateMipmap(a);};E.prototype.GenerateMipmap=function(a){return this.$val.GenerateMipmap(a);};E.ptr.prototype.GetActiveAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveAttrib(a,b);};E.prototype.GetActiveAttrib=function(a,b){return this.$val.GetActiveAttrib(a,b);};E.ptr.prototype.GetActiveUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getActiveUniform(a,b);};E.prototype.GetActiveUniform=function(a,b){return this.$val.GetActiveUniform(a,b);};E.ptr.prototype.GetAttachedShaders=function(a){var $ptr,a,b,c,d,e;b=this;c=b.Object.getAttachedShaders(a);d=$makeSlice(K,$parseInt(c.length));e=0;while(true){if(!(e<$parseInt(c.length))){break;}((e<0||e>=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]=c[e]);e=e+(1)>>0;}return d;};E.prototype.GetAttachedShaders=function(a){return this.$val.GetAttachedShaders(a);};E.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getAttribLocation(a,$externalize(b,$String)))>>0;};E.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};E.ptr.prototype.GetBufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getBufferParameter(a,b);};E.prototype.GetBufferParameter=function(a,b){return this.$val.GetBufferParameter(a,b);};E.ptr.prototype.GetParameter=function(a){var $ptr,a,b;b=this;return b.Object.getParameter(a);};E.prototype.GetParameter=function(a){return this.$val.GetParameter(a);};E.ptr.prototype.GetError=function(){var $ptr,a;a=this;return $parseInt(a.Object.getError())>>0;};E.prototype.GetError=function(){return this.$val.GetError();};E.ptr.prototype.GetExtension=function(a){var $ptr,a,b;b=this;return b.Object.getExtension($externalize(a,$String));};E.prototype.GetExtension=function(a){return this.$val.GetExtension(a);};E.ptr.prototype.GetFramebufferAttachmentParameter=function(a,b,c){var $ptr,a,b,c,d;d=this;return d.Object.getFramebufferAttachmentParameter(a,b,c);};E.prototype.GetFramebufferAttachmentParameter=function(a,b,c){return this.$val.GetFramebufferAttachmentParameter(a,b,c);};E.ptr.prototype.GetProgramParameteri=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getProgramParameter(a,b))>>0;};E.prototype.GetProgramParameteri=function(a,b){return this.$val.GetProgramParameteri(a,b);};E.ptr.prototype.GetProgramParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getProgramParameter(a,b));};E.prototype.GetProgramParameterb=function(a,b){return this.$val.GetProgramParameterb(a,b);};E.ptr.prototype.GetProgramInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getProgramInfoLog(a),$String);};E.prototype.GetProgramInfoLog=function(a){return this.$val.GetProgramInfoLog(a);};E.ptr.prototype.GetRenderbufferParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getRenderbufferParameter(a,b);};E.prototype.GetRenderbufferParameter=function(a,b){return this.$val.GetRenderbufferParameter(a,b);};E.ptr.prototype.GetShaderParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getShaderParameter(a,b);};E.prototype.GetShaderParameter=function(a,b){return this.$val.GetShaderParameter(a,b);};E.ptr.prototype.GetShaderParameterb=function(a,b){var $ptr,a,b,c;c=this;return!!(c.Object.getShaderParameter(a,b));};E.prototype.GetShaderParameterb=function(a,b){return this.$val.GetShaderParameterb(a,b);};E.ptr.prototype.GetShaderInfoLog=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderInfoLog(a),$String);};E.prototype.GetShaderInfoLog=function(a){return this.$val.GetShaderInfoLog(a);};E.ptr.prototype.GetShaderSource=function(a){var $ptr,a,b;b=this;return $internalize(b.Object.getShaderSource(a),$String);};E.prototype.GetShaderSource=function(a){return this.$val.GetShaderSource(a);};E.ptr.prototype.GetSupportedExtensions=function(){var $ptr,a,b,c,d;a=this;b=a.Object.getSupportedExtensions();c=$makeSlice(L,$parseInt(b.length));d=0;while(true){if(!(d<$parseInt(b.length))){break;}((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=$internalize(b[d],$String));d=d+(1)>>0;}return c;};E.prototype.GetSupportedExtensions=function(){return this.$val.GetSupportedExtensions();};E.ptr.prototype.GetTexParameter=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getTexParameter(a,b);};E.prototype.GetTexParameter=function(a,b){return this.$val.GetTexParameter(a,b);};E.ptr.prototype.GetUniform=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniform(a,b);};E.prototype.GetUniform=function(a,b){return this.$val.GetUniform(a,b);};E.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getUniformLocation(a,$externalize(b,$String));};E.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};E.ptr.prototype.GetVertexAttrib=function(a,b){var $ptr,a,b,c;c=this;return c.Object.getVertexAttrib(a,b);};E.prototype.GetVertexAttrib=function(a,b){return this.$val.GetVertexAttrib(a,b);};E.ptr.prototype.GetVertexAttribOffset=function(a,b){var $ptr,a,b,c;c=this;return $parseInt(c.Object.getVertexAttribOffset(a,b))>>0;};E.prototype.GetVertexAttribOffset=function(a,b){return this.$val.GetVertexAttribOffset(a,b);};E.ptr.prototype.IsBuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isBuffer(a));};E.prototype.IsBuffer=function(a){return this.$val.IsBuffer(a);};E.ptr.prototype.IsContextLost=function(){var $ptr,a;a=this;return!!(a.Object.isContextLost());};E.prototype.IsContextLost=function(){return this.$val.IsContextLost();};E.ptr.prototype.IsFramebuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isFramebuffer(a));};E.prototype.IsFramebuffer=function(a){return this.$val.IsFramebuffer(a);};E.ptr.prototype.IsProgram=function(a){var $ptr,a,b;b=this;return!!(b.Object.isProgram(a));};E.prototype.IsProgram=function(a){return this.$val.IsProgram(a);};E.ptr.prototype.IsRenderbuffer=function(a){var $ptr,a,b;b=this;return!!(b.Object.isRenderbuffer(a));};E.prototype.IsRenderbuffer=function(a){return this.$val.IsRenderbuffer(a);};E.ptr.prototype.IsShader=function(a){var $ptr,a,b;b=this;return!!(b.Object.isShader(a));};E.prototype.IsShader=function(a){return this.$val.IsShader(a);};E.ptr.prototype.IsTexture=function(a){var $ptr,a,b;b=this;return!!(b.Object.isTexture(a));};E.prototype.IsTexture=function(a){return this.$val.IsTexture(a);};E.ptr.prototype.IsEnabled=function(a){var $ptr,a,b;b=this;return!!(b.Object.isEnabled(a));};E.prototype.IsEnabled=function(a){return this.$val.IsEnabled(a);};E.ptr.prototype.LineWidth=function(a){var $ptr,a,b;b=this;b.Object.lineWidth(a);};E.prototype.LineWidth=function(a){return this.$val.LineWidth(a);};E.ptr.prototype.LinkProgram=function(a){var $ptr,a,b;b=this;b.Object.linkProgram(a);};E.prototype.LinkProgram=function(a){return this.$val.LinkProgram(a);};E.ptr.prototype.PixelStorei=function(a,b){var $ptr,a,b,c;c=this;c.Object.pixelStorei(a,b);};E.prototype.PixelStorei=function(a,b){return this.$val.PixelStorei(a,b);};E.ptr.prototype.PolygonOffset=function(a,b){var $ptr,a,b,c;c=this;c.Object.polygonOffset(a,b);};E.prototype.PolygonOffset=function(a,b){return this.$val.PolygonOffset(a,b);};E.ptr.prototype.ReadPixels=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.readPixels(a,b,c,d,e,f,g);};E.prototype.ReadPixels=function(a,b,c,d,e,f,g){return this.$val.ReadPixels(a,b,c,d,e,f,g);};E.ptr.prototype.RenderbufferStorage=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.renderbufferStorage(a,b,c,d);};E.prototype.RenderbufferStorage=function(a,b,c,d){return this.$val.RenderbufferStorage(a,b,c,d);};E.ptr.prototype.Scissor=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.scissor(a,b,c,d);};E.prototype.Scissor=function(a,b,c,d){return this.$val.Scissor(a,b,c,d);};E.ptr.prototype.ShaderSource=function(a,b){var $ptr,a,b,c;c=this;c.Object.shaderSource(a,$externalize(b,$String));};E.prototype.ShaderSource=function(a,b){return this.$val.ShaderSource(a,b);};E.ptr.prototype.TexImage2D=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.texImage2D(a,b,c,d,e,f);};E.prototype.TexImage2D=function(a,b,c,d,e,f){return this.$val.TexImage2D(a,b,c,d,e,f);};E.ptr.prototype.TexParameteri=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.texParameteri(a,b,c);};E.prototype.TexParameteri=function(a,b,c){return this.$val.TexParameteri(a,b,c);};E.ptr.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h;h=this;h.Object.texSubImage2D(a,b,c,d,e,f,g);};E.prototype.TexSubImage2D=function(a,b,c,d,e,f,g){return this.$val.TexSubImage2D(a,b,c,d,e,f,g);};E.ptr.prototype.Uniform1f=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1f(a,b);};E.prototype.Uniform1f=function(a,b){return this.$val.Uniform1f(a,b);};E.ptr.prototype.Uniform1i=function(a,b){var $ptr,a,b,c;c=this;c.Object.uniform1i(a,b);};E.prototype.Uniform1i=function(a,b){return this.$val.Uniform1i(a,b);};E.ptr.prototype.Uniform2f=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2f(a,b,c);};E.prototype.Uniform2f=function(a,b,c){return this.$val.Uniform2f(a,b,c);};E.ptr.prototype.Uniform2i=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniform2i(a,b,c);};E.prototype.Uniform2i=function(a,b,c){return this.$val.Uniform2i(a,b,c);};E.ptr.prototype.Uniform3f=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3f(a,b,c,d);};E.prototype.Uniform3f=function(a,b,c,d){return this.$val.Uniform3f(a,b,c,d);};E.ptr.prototype.Uniform3i=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.uniform3i(a,b,c,d);};E.prototype.Uniform3i=function(a,b,c,d){return this.$val.Uniform3i(a,b,c,d);};E.ptr.prototype.Uniform4f=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4f(a,b,c,d,e);};E.prototype.Uniform4f=function(a,b,c,d,e){return this.$val.Uniform4f(a,b,c,d,e);};E.ptr.prototype.Uniform4i=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f;f=this;f.Object.uniform4i(a,b,c,d,e);};E.prototype.Uniform4i=function(a,b,c,d,e){return this.$val.Uniform4i(a,b,c,d,e);};E.ptr.prototype.UniformMatrix2fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix2fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix2fv=function(a,b,c){return this.$val.UniformMatrix2fv(a,b,c);};E.ptr.prototype.UniformMatrix3fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix3fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix3fv=function(a,b,c){return this.$val.UniformMatrix3fv(a,b,c);};E.ptr.prototype.UniformMatrix4fv=function(a,b,c){var $ptr,a,b,c,d;d=this;d.Object.uniformMatrix4fv(a,$externalize(b,$Bool),$externalize(c,M));};E.prototype.UniformMatrix4fv=function(a,b,c){return this.$val.UniformMatrix4fv(a,b,c);};E.ptr.prototype.UseProgram=function(a){var $ptr,a,b;b=this;b.Object.useProgram(a);};E.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};E.ptr.prototype.ValidateProgram=function(a){var $ptr,a,b;b=this;b.Object.validateProgram(a);};E.prototype.ValidateProgram=function(a){return this.$val.ValidateProgram(a);};E.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g;g=this;g.Object.vertexAttribPointer(a,b,c,$externalize(d,$Bool),e,f);};E.prototype.VertexAttribPointer=function(a,b,c,d,e,f){return this.$val.VertexAttribPointer(a,b,c,d,e,f);};E.ptr.prototype.Viewport=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;e.Object.viewport(a,b,c,d);};E.prototype.Viewport=function(a,b,c,d){return this.$val.Viewport(a,b,c,d);};G.methods=[{prop:"GetContextAttributes",name:"GetContextAttributes",pkg:"",typ:$funcType([],[C],false)},{prop:"ActiveTexture",name:"ActiveTexture",pkg:"",typ:$funcType([$Int],[],false)},{prop:"AttachShader",name:"AttachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"BindAttribLocation",name:"BindAttribLocation",pkg:"",typ:$funcType([J,$Int,$String],[],false)},{prop:"BindBuffer",name:"BindBuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindFramebuffer",name:"BindFramebuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindRenderbuffer",name:"BindRenderbuffer",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([$Int,J],[],false)},{prop:"BlendColor",name:"BlendColor",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[],false)},{prop:"BlendEquation",name:"BlendEquation",pkg:"",typ:$funcType([$Int],[],false)},{prop:"BlendEquationSeparate",name:"BlendEquationSeparate",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFunc",name:"BlendFunc",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"BlendFuncSeparate",name:"BlendFuncSeparate",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"BufferData",name:"BufferData",pkg:"",typ:$funcType([$Int,$emptyInterface,$Int],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([$Int,$Int,$emptyInterface],[],false)},{prop:"CheckFramebufferStatus",name:"CheckFramebufferStatus",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Clear",name:"Clear",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ClearColor",name:"ClearColor",pkg:"",typ:$funcType([$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"ClearDepth",name:"ClearDepth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"ClearStencil",name:"ClearStencil",pkg:"",typ:$funcType([$Int],[],false)},{prop:"ColorMask",name:"ColorMask",pkg:"",typ:$funcType([$Bool,$Bool,$Bool,$Bool],[],false)},{prop:"CompileShader",name:"CompileShader",pkg:"",typ:$funcType([J],[],false)},{prop:"CopyTexImage2D",name:"CopyTexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CopyTexSubImage2D",name:"CopyTexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,$Int,$Int],[],false)},{prop:"CreateBuffer",name:"CreateBuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateFramebuffer",name:"CreateFramebuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateProgram",name:"CreateProgram",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateRenderbuffer",name:"CreateRenderbuffer",pkg:"",typ:$funcType([],[J],false)},{prop:"CreateShader",name:"CreateShader",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"CreateTexture",name:"CreateTexture",pkg:"",typ:$funcType([],[J],false)},{prop:"CullFace",name:"CullFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DeleteBuffer",name:"DeleteBuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteProgram",name:"DeleteProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteRenderbuffer",name:"DeleteRenderbuffer",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([J],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([J],[],false)},{prop:"DepthFunc",name:"DepthFunc",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DepthMask",name:"DepthMask",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"DepthRange",name:"DepthRange",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"DetachShader",name:"DetachShader",pkg:"",typ:$funcType([J,J],[],false)},{prop:"Disable",name:"Disable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"DrawArrays",name:"DrawArrays",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Enable",name:"Enable",pkg:"",typ:$funcType([$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Finish",name:"Finish",pkg:"",typ:$funcType([],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[],false)},{prop:"FrameBufferRenderBuffer",name:"FrameBufferRenderBuffer",pkg:"",typ:$funcType([$Int,$Int,$Int,J],[],false)},{prop:"FramebufferTexture2D",name:"FramebufferTexture2D",pkg:"",typ:$funcType([$Int,$Int,$Int,J,$Int],[],false)},{prop:"FrontFace",name:"FrontFace",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GenerateMipmap",name:"GenerateMipmap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"GetActiveAttrib",name:"GetActiveAttrib",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetActiveUniform",name:"GetActiveUniform",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetAttachedShaders",name:"GetAttachedShaders",pkg:"",typ:$funcType([J],[K],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([J,$String],[$Int],false)},{prop:"GetBufferParameter",name:"GetBufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetParameter",name:"GetParameter",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"GetError",name:"GetError",pkg:"",typ:$funcType([],[$Int],false)},{prop:"GetExtension",name:"GetExtension",pkg:"",typ:$funcType([$String],[J],false)},{prop:"GetFramebufferAttachmentParameter",name:"GetFramebufferAttachmentParameter",pkg:"",typ:$funcType([$Int,$Int,$Int],[J],false)},{prop:"GetProgramParameteri",name:"GetProgramParameteri",pkg:"",typ:$funcType([J,$Int],[$Int],false)},{prop:"GetProgramParameterb",name:"GetProgramParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetProgramInfoLog",name:"GetProgramInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetRenderbufferParameter",name:"GetRenderbufferParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetShaderParameter",name:"GetShaderParameter",pkg:"",typ:$funcType([J,$Int],[J],false)},{prop:"GetShaderParameterb",name:"GetShaderParameterb",pkg:"",typ:$funcType([J,$Int],[$Bool],false)},{prop:"GetShaderInfoLog",name:"GetShaderInfoLog",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetShaderSource",name:"GetShaderSource",pkg:"",typ:$funcType([J],[$String],false)},{prop:"GetSupportedExtensions",name:"GetSupportedExtensions",pkg:"",typ:$funcType([],[L],false)},{prop:"GetTexParameter",name:"GetTexParameter",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetUniform",name:"GetUniform",pkg:"",typ:$funcType([J,J],[J],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([J,$String],[J],false)},{prop:"GetVertexAttrib",name:"GetVertexAttrib",pkg:"",typ:$funcType([$Int,$Int],[J],false)},{prop:"GetVertexAttribOffset",name:"GetVertexAttribOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"IsBuffer",name:"IsBuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsContextLost",name:"IsContextLost",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsFramebuffer",name:"IsFramebuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsProgram",name:"IsProgram",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsRenderbuffer",name:"IsRenderbuffer",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsShader",name:"IsShader",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsTexture",name:"IsTexture",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"IsEnabled",name:"IsEnabled",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"LineWidth",name:"LineWidth",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"LinkProgram",name:"LinkProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"PixelStorei",name:"PixelStorei",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"PolygonOffset",name:"PolygonOffset",pkg:"",typ:$funcType([$Float64,$Float64],[],false)},{prop:"ReadPixels",name:"ReadPixels",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"RenderbufferStorage",name:"RenderbufferStorage",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"Scissor",name:"Scissor",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)},{prop:"ShaderSource",name:"ShaderSource",pkg:"",typ:$funcType([J,$String],[],false)},{prop:"TexImage2D",name:"TexImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"TexParameteri",name:"TexParameteri",pkg:"",typ:$funcType([$Int,$Int,$Int],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int,$Int,$Int,J],[],false)},{prop:"Uniform1f",name:"Uniform1f",pkg:"",typ:$funcType([J,$Float32],[],false)},{prop:"Uniform1i",name:"Uniform1i",pkg:"",typ:$funcType([J,$Int],[],false)},{prop:"Uniform2f",name:"Uniform2f",pkg:"",typ:$funcType([J,$Float32,$Float32],[],false)},{prop:"Uniform2i",name:"Uniform2i",pkg:"",typ:$funcType([J,$Int,$Int],[],false)},{prop:"Uniform3f",name:"Uniform3f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform3i",name:"Uniform3i",pkg:"",typ:$funcType([J,$Int,$Int,$Int],[],false)},{prop:"Uniform4f",name:"Uniform4f",pkg:"",typ:$funcType([J,$Float32,$Float32,$Float32,$Float32],[],false)},{prop:"Uniform4i",name:"Uniform4i",pkg:"",typ:$funcType([J,$Int,$Int,$Int,$Int],[],false)},{prop:"UniformMatrix2fv",name:"UniformMatrix2fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix3fv",name:"UniformMatrix3fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UniformMatrix4fv",name:"UniformMatrix4fv",pkg:"",typ:$funcType([J,$Bool,M],[],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"ValidateProgram",name:"ValidateProgram",pkg:"",typ:$funcType([J],[],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([$Int,$Int,$Int,$Bool,$Int,$Int],[],false)},{prop:"Viewport",name:"Viewport",pkg:"",typ:$funcType([$Int,$Int,$Int,$Int],[],false)}];C.init([{prop:"Alpha",name:"Alpha",pkg:"",typ:$Bool,tag:""},{prop:"Depth",name:"Depth",pkg:"",typ:$Bool,tag:""},{prop:"Stencil",name:"Stencil",pkg:"",typ:$Bool,tag:""},{prop:"Antialias",name:"Antialias",pkg:"",typ:$Bool,tag:""},{prop:"PremultipliedAlpha",name:"PremultipliedAlpha",pkg:"",typ:$Bool,tag:""},{prop:"PreserveDrawingBuffer",name:"PreserveDrawingBuffer",pkg:"",typ:$Bool,tag:""}]);E.init([{prop:"Object",name:"",pkg:"",typ:J,tag:""},{prop:"ARRAY_BUFFER",name:"ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER\""},{prop:"ARRAY_BUFFER_BINDING",name:"ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ARRAY_BUFFER_BINDING\""},{prop:"ATTACHED_SHADERS",name:"ATTACHED_SHADERS",pkg:"",typ:$Int,tag:"js:\"ATTACHED_SHADERS\""},{prop:"BACK",name:"BACK",pkg:"",typ:$Int,tag:"js:\"BACK\""},{prop:"BLEND",name:"BLEND",pkg:"",typ:$Int,tag:"js:\"BLEND\""},{prop:"BLEND_COLOR",name:"BLEND_COLOR",pkg:"",typ:$Int,tag:"js:\"BLEND_COLOR\""},{prop:"BLEND_DST_ALPHA",name:"BLEND_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_ALPHA\""},{prop:"BLEND_DST_RGB",name:"BLEND_DST_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_DST_RGB\""},{prop:"BLEND_EQUATION",name:"BLEND_EQUATION",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION\""},{prop:"BLEND_EQUATION_ALPHA",name:"BLEND_EQUATION_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_ALPHA\""},{prop:"BLEND_EQUATION_RGB",name:"BLEND_EQUATION_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_EQUATION_RGB\""},{prop:"BLEND_SRC_ALPHA",name:"BLEND_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_ALPHA\""},{prop:"BLEND_SRC_RGB",name:"BLEND_SRC_RGB",pkg:"",typ:$Int,tag:"js:\"BLEND_SRC_RGB\""},{prop:"BLUE_BITS",name:"BLUE_BITS",pkg:"",typ:$Int,tag:"js:\"BLUE_BITS\""},{prop:"BOOL",name:"BOOL",pkg:"",typ:$Int,tag:"js:\"BOOL\""},{prop:"BOOL_VEC2",name:"BOOL_VEC2",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC2\""},{prop:"BOOL_VEC3",name:"BOOL_VEC3",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC3\""},{prop:"BOOL_VEC4",name:"BOOL_VEC4",pkg:"",typ:$Int,tag:"js:\"BOOL_VEC4\""},{prop:"BROWSER_DEFAULT_WEBGL",name:"BROWSER_DEFAULT_WEBGL",pkg:"",typ:$Int,tag:"js:\"BROWSER_DEFAULT_WEBGL\""},{prop:"BUFFER_SIZE",name:"BUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"BUFFER_SIZE\""},{prop:"BUFFER_USAGE",name:"BUFFER_USAGE",pkg:"",typ:$Int,tag:"js:\"BUFFER_USAGE\""},{prop:"BYTE",name:"BYTE",pkg:"",typ:$Int,tag:"js:\"BYTE\""},{prop:"CCW",name:"CCW",pkg:"",typ:$Int,tag:"js:\"CCW\""},{prop:"CLAMP_TO_EDGE",name:"CLAMP_TO_EDGE",pkg:"",typ:$Int,tag:"js:\"CLAMP_TO_EDGE\""},{prop:"COLOR_ATTACHMENT0",name:"COLOR_ATTACHMENT0",pkg:"",typ:$Int,tag:"js:\"COLOR_ATTACHMENT0\""},{prop:"COLOR_BUFFER_BIT",name:"COLOR_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"COLOR_BUFFER_BIT\""},{prop:"COLOR_CLEAR_VALUE",name:"COLOR_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"COLOR_CLEAR_VALUE\""},{prop:"COLOR_WRITEMASK",name:"COLOR_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"COLOR_WRITEMASK\""},{prop:"COMPILE_STATUS",name:"COMPILE_STATUS",pkg:"",typ:$Int,tag:"js:\"COMPILE_STATUS\""},{prop:"COMPRESSED_TEXTURE_FORMATS",name:"COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"COMPRESSED_TEXTURE_FORMATS\""},{prop:"CONSTANT_ALPHA",name:"CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"CONSTANT_ALPHA\""},{prop:"CONSTANT_COLOR",name:"CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"CONSTANT_COLOR\""},{prop:"CONTEXT_LOST_WEBGL",name:"CONTEXT_LOST_WEBGL",pkg:"",typ:$Int,tag:"js:\"CONTEXT_LOST_WEBGL\""},{prop:"CULL_FACE",name:"CULL_FACE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE\""},{prop:"CULL_FACE_MODE",name:"CULL_FACE_MODE",pkg:"",typ:$Int,tag:"js:\"CULL_FACE_MODE\""},{prop:"CURRENT_PROGRAM",name:"CURRENT_PROGRAM",pkg:"",typ:$Int,tag:"js:\"CURRENT_PROGRAM\""},{prop:"CURRENT_VERTEX_ATTRIB",name:"CURRENT_VERTEX_ATTRIB",pkg:"",typ:$Int,tag:"js:\"CURRENT_VERTEX_ATTRIB\""},{prop:"CW",name:"CW",pkg:"",typ:$Int,tag:"js:\"CW\""},{prop:"DECR",name:"DECR",pkg:"",typ:$Int,tag:"js:\"DECR\""},{prop:"DECR_WRAP",name:"DECR_WRAP",pkg:"",typ:$Int,tag:"js:\"DECR_WRAP\""},{prop:"DELETE_STATUS",name:"DELETE_STATUS",pkg:"",typ:$Int,tag:"js:\"DELETE_STATUS\""},{prop:"DEPTH_ATTACHMENT",name:"DEPTH_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_ATTACHMENT\""},{prop:"DEPTH_BITS",name:"DEPTH_BITS",pkg:"",typ:$Int,tag:"js:\"DEPTH_BITS\""},{prop:"DEPTH_BUFFER_BIT",name:"DEPTH_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"DEPTH_BUFFER_BIT\""},{prop:"DEPTH_CLEAR_VALUE",name:"DEPTH_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"DEPTH_CLEAR_VALUE\""},{prop:"DEPTH_COMPONENT",name:"DEPTH_COMPONENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT\""},{prop:"DEPTH_COMPONENT16",name:"DEPTH_COMPONENT16",pkg:"",typ:$Int,tag:"js:\"DEPTH_COMPONENT16\""},{prop:"DEPTH_FUNC",name:"DEPTH_FUNC",pkg:"",typ:$Int,tag:"js:\"DEPTH_FUNC\""},{prop:"DEPTH_RANGE",name:"DEPTH_RANGE",pkg:"",typ:$Int,tag:"js:\"DEPTH_RANGE\""},{prop:"DEPTH_STENCIL",name:"DEPTH_STENCIL",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL\""},{prop:"DEPTH_STENCIL_ATTACHMENT",name:"DEPTH_STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"DEPTH_STENCIL_ATTACHMENT\""},{prop:"DEPTH_TEST",name:"DEPTH_TEST",pkg:"",typ:$Int,tag:"js:\"DEPTH_TEST\""},{prop:"DEPTH_WRITEMASK",name:"DEPTH_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"DEPTH_WRITEMASK\""},{prop:"DITHER",name:"DITHER",pkg:"",typ:$Int,tag:"js:\"DITHER\""},{prop:"DONT_CARE",name:"DONT_CARE",pkg:"",typ:$Int,tag:"js:\"DONT_CARE\""},{prop:"DST_ALPHA",name:"DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"DST_ALPHA\""},{prop:"DST_COLOR",name:"DST_COLOR",pkg:"",typ:$Int,tag:"js:\"DST_COLOR\""},{prop:"DYNAMIC_DRAW",name:"DYNAMIC_DRAW",pkg:"",typ:$Int,tag:"js:\"DYNAMIC_DRAW\""},{prop:"ELEMENT_ARRAY_BUFFER",name:"ELEMENT_ARRAY_BUFFER",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER\""},{prop:"ELEMENT_ARRAY_BUFFER_BINDING",name:"ELEMENT_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"ELEMENT_ARRAY_BUFFER_BINDING\""},{prop:"EQUAL",name:"EQUAL",pkg:"",typ:$Int,tag:"js:\"EQUAL\""},{prop:"FASTEST",name:"FASTEST",pkg:"",typ:$Int,tag:"js:\"FASTEST\""},{prop:"FLOAT",name:"FLOAT",pkg:"",typ:$Int,tag:"js:\"FLOAT\""},{prop:"FLOAT_MAT2",name:"FLOAT_MAT2",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT2\""},{prop:"FLOAT_MAT3",name:"FLOAT_MAT3",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT3\""},{prop:"FLOAT_MAT4",name:"FLOAT_MAT4",pkg:"",typ:$Int,tag:"js:\"FLOAT_MAT4\""},{prop:"FLOAT_VEC2",name:"FLOAT_VEC2",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC2\""},{prop:"FLOAT_VEC3",name:"FLOAT_VEC3",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC3\""},{prop:"FLOAT_VEC4",name:"FLOAT_VEC4",pkg:"",typ:$Int,tag:"js:\"FLOAT_VEC4\""},{prop:"FRAGMENT_SHADER",name:"FRAGMENT_SHADER",pkg:"",typ:$Int,tag:"js:\"FRAGMENT_SHADER\""},{prop:"FRAMEBUFFER",name:"FRAMEBUFFER",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\""},{prop:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",name:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\""},{prop:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",name:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\""},{prop:"FRAMEBUFFER_BINDING",name:"FRAMEBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_BINDING\""},{prop:"FRAMEBUFFER_COMPLETE",name:"FRAMEBUFFER_COMPLETE",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_COMPLETE\""},{prop:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\""},{prop:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",name:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\""},{prop:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",name:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\""},{prop:"FRAMEBUFFER_UNSUPPORTED",name:"FRAMEBUFFER_UNSUPPORTED",pkg:"",typ:$Int,tag:"js:\"FRAMEBUFFER_UNSUPPORTED\""},{prop:"FRONT",name:"FRONT",pkg:"",typ:$Int,tag:"js:\"FRONT\""},{prop:"FRONT_AND_BACK",name:"FRONT_AND_BACK",pkg:"",typ:$Int,tag:"js:\"FRONT_AND_BACK\""},{prop:"FRONT_FACE",name:"FRONT_FACE",pkg:"",typ:$Int,tag:"js:\"FRONT_FACE\""},{prop:"FUNC_ADD",name:"FUNC_ADD",pkg:"",typ:$Int,tag:"js:\"FUNC_ADD\""},{prop:"FUNC_REVERSE_SUBTRACT",name:"FUNC_REVERSE_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_REVERSE_SUBTRACT\""},{prop:"FUNC_SUBTRACT",name:"FUNC_SUBTRACT",pkg:"",typ:$Int,tag:"js:\"FUNC_SUBTRACT\""},{prop:"GENERATE_MIPMAP_HINT",name:"GENERATE_MIPMAP_HINT",pkg:"",typ:$Int,tag:"js:\"GENERATE_MIPMAP_HINT\""},{prop:"GEQUAL",name:"GEQUAL",pkg:"",typ:$Int,tag:"js:\"GEQUAL\""},{prop:"GREATER",name:"GREATER",pkg:"",typ:$Int,tag:"js:\"GREATER\""},{prop:"GREEN_BITS",name:"GREEN_BITS",pkg:"",typ:$Int,tag:"js:\"GREEN_BITS\""},{prop:"HIGH_FLOAT",name:"HIGH_FLOAT",pkg:"",typ:$Int,tag:"js:\"HIGH_FLOAT\""},{prop:"HIGH_INT",name:"HIGH_INT",pkg:"",typ:$Int,tag:"js:\"HIGH_INT\""},{prop:"INCR",name:"INCR",pkg:"",typ:$Int,tag:"js:\"INCR\""},{prop:"INCR_WRAP",name:"INCR_WRAP",pkg:"",typ:$Int,tag:"js:\"INCR_WRAP\""},{prop:"INFO_LOG_LENGTH",name:"INFO_LOG_LENGTH",pkg:"",typ:$Int,tag:"js:\"INFO_LOG_LENGTH\""},{prop:"INT",name:"INT",pkg:"",typ:$Int,tag:"js:\"INT\""},{prop:"INT_VEC2",name:"INT_VEC2",pkg:"",typ:$Int,tag:"js:\"INT_VEC2\""},{prop:"INT_VEC3",name:"INT_VEC3",pkg:"",typ:$Int,tag:"js:\"INT_VEC3\""},{prop:"INT_VEC4",name:"INT_VEC4",pkg:"",typ:$Int,tag:"js:\"INT_VEC4\""},{prop:"INVALID_ENUM",name:"INVALID_ENUM",pkg:"",typ:$Int,tag:"js:\"INVALID_ENUM\""},{prop:"INVALID_FRAMEBUFFER_OPERATION",name:"INVALID_FRAMEBUFFER_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_FRAMEBUFFER_OPERATION\""},{prop:"INVALID_OPERATION",name:"INVALID_OPERATION",pkg:"",typ:$Int,tag:"js:\"INVALID_OPERATION\""},{prop:"INVALID_VALUE",name:"INVALID_VALUE",pkg:"",typ:$Int,tag:"js:\"INVALID_VALUE\""},{prop:"INVERT",name:"INVERT",pkg:"",typ:$Int,tag:"js:\"INVERT\""},{prop:"KEEP",name:"KEEP",pkg:"",typ:$Int,tag:"js:\"KEEP\""},{prop:"LEQUAL",name:"LEQUAL",pkg:"",typ:$Int,tag:"js:\"LEQUAL\""},{prop:"LESS",name:"LESS",pkg:"",typ:$Int,tag:"js:\"LESS\""},{prop:"LINEAR",name:"LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR\""},{prop:"LINEAR_MIPMAP_LINEAR",name:"LINEAR_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_LINEAR\""},{prop:"LINEAR_MIPMAP_NEAREST",name:"LINEAR_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"LINEAR_MIPMAP_NEAREST\""},{prop:"LINES",name:"LINES",pkg:"",typ:$Int,tag:"js:\"LINES\""},{prop:"LINE_LOOP",name:"LINE_LOOP",pkg:"",typ:$Int,tag:"js:\"LINE_LOOP\""},{prop:"LINE_STRIP",name:"LINE_STRIP",pkg:"",typ:$Int,tag:"js:\"LINE_STRIP\""},{prop:"LINE_WIDTH",name:"LINE_WIDTH",pkg:"",typ:$Int,tag:"js:\"LINE_WIDTH\""},{prop:"LINK_STATUS",name:"LINK_STATUS",pkg:"",typ:$Int,tag:"js:\"LINK_STATUS\""},{prop:"LOW_FLOAT",name:"LOW_FLOAT",pkg:"",typ:$Int,tag:"js:\"LOW_FLOAT\""},{prop:"LOW_INT",name:"LOW_INT",pkg:"",typ:$Int,tag:"js:\"LOW_INT\""},{prop:"LUMINANCE",name:"LUMINANCE",pkg:"",typ:$Int,tag:"js:\"LUMINANCE\""},{prop:"LUMINANCE_ALPHA",name:"LUMINANCE_ALPHA",pkg:"",typ:$Int,tag:"js:\"LUMINANCE_ALPHA\""},{prop:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",name:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_CUBE_MAP_TEXTURE_SIZE",name:"MAX_CUBE_MAP_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_CUBE_MAP_TEXTURE_SIZE\""},{prop:"MAX_FRAGMENT_UNIFORM_VECTORS",name:"MAX_FRAGMENT_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_FRAGMENT_UNIFORM_VECTORS\""},{prop:"MAX_RENDERBUFFER_SIZE",name:"MAX_RENDERBUFFER_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_RENDERBUFFER_SIZE\""},{prop:"MAX_TEXTURE_IMAGE_UNITS",name:"MAX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_TEXTURE_SIZE",name:"MAX_TEXTURE_SIZE",pkg:"",typ:$Int,tag:"js:\"MAX_TEXTURE_SIZE\""},{prop:"MAX_VARYING_VECTORS",name:"MAX_VARYING_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VARYING_VECTORS\""},{prop:"MAX_VERTEX_ATTRIBS",name:"MAX_VERTEX_ATTRIBS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_ATTRIBS\""},{prop:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",name:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\""},{prop:"MAX_VERTEX_UNIFORM_VECTORS",name:"MAX_VERTEX_UNIFORM_VECTORS",pkg:"",typ:$Int,tag:"js:\"MAX_VERTEX_UNIFORM_VECTORS\""},{prop:"MAX_VIEWPORT_DIMS",name:"MAX_VIEWPORT_DIMS",pkg:"",typ:$Int,tag:"js:\"MAX_VIEWPORT_DIMS\""},{prop:"MEDIUM_FLOAT",name:"MEDIUM_FLOAT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_FLOAT\""},{prop:"MEDIUM_INT",name:"MEDIUM_INT",pkg:"",typ:$Int,tag:"js:\"MEDIUM_INT\""},{prop:"MIRRORED_REPEAT",name:"MIRRORED_REPEAT",pkg:"",typ:$Int,tag:"js:\"MIRRORED_REPEAT\""},{prop:"NEAREST",name:"NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST\""},{prop:"NEAREST_MIPMAP_LINEAR",name:"NEAREST_MIPMAP_LINEAR",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_LINEAR\""},{prop:"NEAREST_MIPMAP_NEAREST",name:"NEAREST_MIPMAP_NEAREST",pkg:"",typ:$Int,tag:"js:\"NEAREST_MIPMAP_NEAREST\""},{prop:"NEVER",name:"NEVER",pkg:"",typ:$Int,tag:"js:\"NEVER\""},{prop:"NICEST",name:"NICEST",pkg:"",typ:$Int,tag:"js:\"NICEST\""},{prop:"NONE",name:"NONE",pkg:"",typ:$Int,tag:"js:\"NONE\""},{prop:"NOTEQUAL",name:"NOTEQUAL",pkg:"",typ:$Int,tag:"js:\"NOTEQUAL\""},{prop:"NO_ERROR",name:"NO_ERROR",pkg:"",typ:$Int,tag:"js:\"NO_ERROR\""},{prop:"NUM_COMPRESSED_TEXTURE_FORMATS",name:"NUM_COMPRESSED_TEXTURE_FORMATS",pkg:"",typ:$Int,tag:"js:\"NUM_COMPRESSED_TEXTURE_FORMATS\""},{prop:"ONE",name:"ONE",pkg:"",typ:$Int,tag:"js:\"ONE\""},{prop:"ONE_MINUS_CONSTANT_ALPHA",name:"ONE_MINUS_CONSTANT_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_ALPHA\""},{prop:"ONE_MINUS_CONSTANT_COLOR",name:"ONE_MINUS_CONSTANT_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_CONSTANT_COLOR\""},{prop:"ONE_MINUS_DST_ALPHA",name:"ONE_MINUS_DST_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_ALPHA\""},{prop:"ONE_MINUS_DST_COLOR",name:"ONE_MINUS_DST_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_DST_COLOR\""},{prop:"ONE_MINUS_SRC_ALPHA",name:"ONE_MINUS_SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_ALPHA\""},{prop:"ONE_MINUS_SRC_COLOR",name:"ONE_MINUS_SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"ONE_MINUS_SRC_COLOR\""},{prop:"OUT_OF_MEMORY",name:"OUT_OF_MEMORY",pkg:"",typ:$Int,tag:"js:\"OUT_OF_MEMORY\""},{prop:"PACK_ALIGNMENT",name:"PACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"PACK_ALIGNMENT\""},{prop:"POINTS",name:"POINTS",pkg:"",typ:$Int,tag:"js:\"POINTS\""},{prop:"POLYGON_OFFSET_FACTOR",name:"POLYGON_OFFSET_FACTOR",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FACTOR\""},{prop:"POLYGON_OFFSET_FILL",name:"POLYGON_OFFSET_FILL",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_FILL\""},{prop:"POLYGON_OFFSET_UNITS",name:"POLYGON_OFFSET_UNITS",pkg:"",typ:$Int,tag:"js:\"POLYGON_OFFSET_UNITS\""},{prop:"RED_BITS",name:"RED_BITS",pkg:"",typ:$Int,tag:"js:\"RED_BITS\""},{prop:"RENDERBUFFER",name:"RENDERBUFFER",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER\""},{prop:"RENDERBUFFER_ALPHA_SIZE",name:"RENDERBUFFER_ALPHA_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_ALPHA_SIZE\""},{prop:"RENDERBUFFER_BINDING",name:"RENDERBUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BINDING\""},{prop:"RENDERBUFFER_BLUE_SIZE",name:"RENDERBUFFER_BLUE_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_BLUE_SIZE\""},{prop:"RENDERBUFFER_DEPTH_SIZE",name:"RENDERBUFFER_DEPTH_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_DEPTH_SIZE\""},{prop:"RENDERBUFFER_GREEN_SIZE",name:"RENDERBUFFER_GREEN_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_GREEN_SIZE\""},{prop:"RENDERBUFFER_HEIGHT",name:"RENDERBUFFER_HEIGHT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_HEIGHT\""},{prop:"RENDERBUFFER_INTERNAL_FORMAT",name:"RENDERBUFFER_INTERNAL_FORMAT",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_INTERNAL_FORMAT\""},{prop:"RENDERBUFFER_RED_SIZE",name:"RENDERBUFFER_RED_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_RED_SIZE\""},{prop:"RENDERBUFFER_STENCIL_SIZE",name:"RENDERBUFFER_STENCIL_SIZE",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_STENCIL_SIZE\""},{prop:"RENDERBUFFER_WIDTH",name:"RENDERBUFFER_WIDTH",pkg:"",typ:$Int,tag:"js:\"RENDERBUFFER_WIDTH\""},{prop:"RENDERER",name:"RENDERER",pkg:"",typ:$Int,tag:"js:\"RENDERER\""},{prop:"REPEAT",name:"REPEAT",pkg:"",typ:$Int,tag:"js:\"REPEAT\""},{prop:"REPLACE",name:"REPLACE",pkg:"",typ:$Int,tag:"js:\"REPLACE\""},{prop:"RGB",name:"RGB",pkg:"",typ:$Int,tag:"js:\"RGB\""},{prop:"RGB5_A1",name:"RGB5_A1",pkg:"",typ:$Int,tag:"js:\"RGB5_A1\""},{prop:"RGB565",name:"RGB565",pkg:"",typ:$Int,tag:"js:\"RGB565\""},{prop:"RGBA",name:"RGBA",pkg:"",typ:$Int,tag:"js:\"RGBA\""},{prop:"RGBA4",name:"RGBA4",pkg:"",typ:$Int,tag:"js:\"RGBA4\""},{prop:"SAMPLER_2D",name:"SAMPLER_2D",pkg:"",typ:$Int,tag:"js:\"SAMPLER_2D\""},{prop:"SAMPLER_CUBE",name:"SAMPLER_CUBE",pkg:"",typ:$Int,tag:"js:\"SAMPLER_CUBE\""},{prop:"SAMPLES",name:"SAMPLES",pkg:"",typ:$Int,tag:"js:\"SAMPLES\""},{prop:"SAMPLE_ALPHA_TO_COVERAGE",name:"SAMPLE_ALPHA_TO_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_ALPHA_TO_COVERAGE\""},{prop:"SAMPLE_BUFFERS",name:"SAMPLE_BUFFERS",pkg:"",typ:$Int,tag:"js:\"SAMPLE_BUFFERS\""},{prop:"SAMPLE_COVERAGE",name:"SAMPLE_COVERAGE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE\""},{prop:"SAMPLE_COVERAGE_INVERT",name:"SAMPLE_COVERAGE_INVERT",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_INVERT\""},{prop:"SAMPLE_COVERAGE_VALUE",name:"SAMPLE_COVERAGE_VALUE",pkg:"",typ:$Int,tag:"js:\"SAMPLE_COVERAGE_VALUE\""},{prop:"SCISSOR_BOX",name:"SCISSOR_BOX",pkg:"",typ:$Int,tag:"js:\"SCISSOR_BOX\""},{prop:"SCISSOR_TEST",name:"SCISSOR_TEST",pkg:"",typ:$Int,tag:"js:\"SCISSOR_TEST\""},{prop:"SHADER_COMPILER",name:"SHADER_COMPILER",pkg:"",typ:$Int,tag:"js:\"SHADER_COMPILER\""},{prop:"SHADER_SOURCE_LENGTH",name:"SHADER_SOURCE_LENGTH",pkg:"",typ:$Int,tag:"js:\"SHADER_SOURCE_LENGTH\""},{prop:"SHADER_TYPE",name:"SHADER_TYPE",pkg:"",typ:$Int,tag:"js:\"SHADER_TYPE\""},{prop:"SHADING_LANGUAGE_VERSION",name:"SHADING_LANGUAGE_VERSION",pkg:"",typ:$Int,tag:"js:\"SHADING_LANGUAGE_VERSION\""},{prop:"SHORT",name:"SHORT",pkg:"",typ:$Int,tag:"js:\"SHORT\""},{prop:"SRC_ALPHA",name:"SRC_ALPHA",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA\""},{prop:"SRC_ALPHA_SATURATE",name:"SRC_ALPHA_SATURATE",pkg:"",typ:$Int,tag:"js:\"SRC_ALPHA_SATURATE\""},{prop:"SRC_COLOR",name:"SRC_COLOR",pkg:"",typ:$Int,tag:"js:\"SRC_COLOR\""},{prop:"STATIC_DRAW",name:"STATIC_DRAW",pkg:"",typ:$Int,tag:"js:\"STATIC_DRAW\""},{prop:"STENCIL_ATTACHMENT",name:"STENCIL_ATTACHMENT",pkg:"",typ:$Int,tag:"js:\"STENCIL_ATTACHMENT\""},{prop:"STENCIL_BACK_FAIL",name:"STENCIL_BACK_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FAIL\""},{prop:"STENCIL_BACK_FUNC",name:"STENCIL_BACK_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_FUNC\""},{prop:"STENCIL_BACK_PASS_DEPTH_FAIL",name:"STENCIL_BACK_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_FAIL\""},{prop:"STENCIL_BACK_PASS_DEPTH_PASS",name:"STENCIL_BACK_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_PASS_DEPTH_PASS\""},{prop:"STENCIL_BACK_REF",name:"STENCIL_BACK_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_REF\""},{prop:"STENCIL_BACK_VALUE_MASK",name:"STENCIL_BACK_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_VALUE_MASK\""},{prop:"STENCIL_BACK_WRITEMASK",name:"STENCIL_BACK_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_BACK_WRITEMASK\""},{prop:"STENCIL_BITS",name:"STENCIL_BITS",pkg:"",typ:$Int,tag:"js:\"STENCIL_BITS\""},{prop:"STENCIL_BUFFER_BIT",name:"STENCIL_BUFFER_BIT",pkg:"",typ:$Int,tag:"js:\"STENCIL_BUFFER_BIT\""},{prop:"STENCIL_CLEAR_VALUE",name:"STENCIL_CLEAR_VALUE",pkg:"",typ:$Int,tag:"js:\"STENCIL_CLEAR_VALUE\""},{prop:"STENCIL_FAIL",name:"STENCIL_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_FAIL\""},{prop:"STENCIL_FUNC",name:"STENCIL_FUNC",pkg:"",typ:$Int,tag:"js:\"STENCIL_FUNC\""},{prop:"STENCIL_INDEX",name:"STENCIL_INDEX",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX\""},{prop:"STENCIL_INDEX8",name:"STENCIL_INDEX8",pkg:"",typ:$Int,tag:"js:\"STENCIL_INDEX8\""},{prop:"STENCIL_PASS_DEPTH_FAIL",name:"STENCIL_PASS_DEPTH_FAIL",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_FAIL\""},{prop:"STENCIL_PASS_DEPTH_PASS",name:"STENCIL_PASS_DEPTH_PASS",pkg:"",typ:$Int,tag:"js:\"STENCIL_PASS_DEPTH_PASS\""},{prop:"STENCIL_REF",name:"STENCIL_REF",pkg:"",typ:$Int,tag:"js:\"STENCIL_REF\""},{prop:"STENCIL_TEST",name:"STENCIL_TEST",pkg:"",typ:$Int,tag:"js:\"STENCIL_TEST\""},{prop:"STENCIL_VALUE_MASK",name:"STENCIL_VALUE_MASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_VALUE_MASK\""},{prop:"STENCIL_WRITEMASK",name:"STENCIL_WRITEMASK",pkg:"",typ:$Int,tag:"js:\"STENCIL_WRITEMASK\""},{prop:"STREAM_DRAW",name:"STREAM_DRAW",pkg:"",typ:$Int,tag:"js:\"STREAM_DRAW\""},{prop:"SUBPIXEL_BITS",name:"SUBPIXEL_BITS",pkg:"",typ:$Int,tag:"js:\"SUBPIXEL_BITS\""},{prop:"TEXTURE",name:"TEXTURE",pkg:"",typ:$Int,tag:"js:\"TEXTURE\""},{prop:"TEXTURE0",name:"TEXTURE0",pkg:"",typ:$Int,tag:"js:\"TEXTURE0\""},{prop:"TEXTURE1",name:"TEXTURE1",pkg:"",typ:$Int,tag:"js:\"TEXTURE1\""},{prop:"TEXTURE2",name:"TEXTURE2",pkg:"",typ:$Int,tag:"js:\"TEXTURE2\""},{prop:"TEXTURE3",name:"TEXTURE3",pkg:"",typ:$Int,tag:"js:\"TEXTURE3\""},{prop:"TEXTURE4",name:"TEXTURE4",pkg:"",typ:$Int,tag:"js:\"TEXTURE4\""},{prop:"TEXTURE5",name:"TEXTURE5",pkg:"",typ:$Int,tag:"js:\"TEXTURE5\""},{prop:"TEXTURE6",name:"TEXTURE6",pkg:"",typ:$Int,tag:"js:\"TEXTURE6\""},{prop:"TEXTURE7",name:"TEXTURE7",pkg:"",typ:$Int,tag:"js:\"TEXTURE7\""},{prop:"TEXTURE8",name:"TEXTURE8",pkg:"",typ:$Int,tag:"js:\"TEXTURE8\""},{prop:"TEXTURE9",name:"TEXTURE9",pkg:"",typ:$Int,tag:"js:\"TEXTURE9\""},{prop:"TEXTURE10",name:"TEXTURE10",pkg:"",typ:$Int,tag:"js:\"TEXTURE10\""},{prop:"TEXTURE11",name:"TEXTURE11",pkg:"",typ:$Int,tag:"js:\"TEXTURE11\""},{prop:"TEXTURE12",name:"TEXTURE12",pkg:"",typ:$Int,tag:"js:\"TEXTURE12\""},{prop:"TEXTURE13",name:"TEXTURE13",pkg:"",typ:$Int,tag:"js:\"TEXTURE13\""},{prop:"TEXTURE14",name:"TEXTURE14",pkg:"",typ:$Int,tag:"js:\"TEXTURE14\""},{prop:"TEXTURE15",name:"TEXTURE15",pkg:"",typ:$Int,tag:"js:\"TEXTURE15\""},{prop:"TEXTURE16",name:"TEXTURE16",pkg:"",typ:$Int,tag:"js:\"TEXTURE16\""},{prop:"TEXTURE17",name:"TEXTURE17",pkg:"",typ:$Int,tag:"js:\"TEXTURE17\""},{prop:"TEXTURE18",name:"TEXTURE18",pkg:"",typ:$Int,tag:"js:\"TEXTURE18\""},{prop:"TEXTURE19",name:"TEXTURE19",pkg:"",typ:$Int,tag:"js:\"TEXTURE19\""},{prop:"TEXTURE20",name:"TEXTURE20",pkg:"",typ:$Int,tag:"js:\"TEXTURE20\""},{prop:"TEXTURE21",name:"TEXTURE21",pkg:"",typ:$Int,tag:"js:\"TEXTURE21\""},{prop:"TEXTURE22",name:"TEXTURE22",pkg:"",typ:$Int,tag:"js:\"TEXTURE22\""},{prop:"TEXTURE23",name:"TEXTURE23",pkg:"",typ:$Int,tag:"js:\"TEXTURE23\""},{prop:"TEXTURE24",name:"TEXTURE24",pkg:"",typ:$Int,tag:"js:\"TEXTURE24\""},{prop:"TEXTURE25",name:"TEXTURE25",pkg:"",typ:$Int,tag:"js:\"TEXTURE25\""},{prop:"TEXTURE26",name:"TEXTURE26",pkg:"",typ:$Int,tag:"js:\"TEXTURE26\""},{prop:"TEXTURE27",name:"TEXTURE27",pkg:"",typ:$Int,tag:"js:\"TEXTURE27\""},{prop:"TEXTURE28",name:"TEXTURE28",pkg:"",typ:$Int,tag:"js:\"TEXTURE28\""},{prop:"TEXTURE29",name:"TEXTURE29",pkg:"",typ:$Int,tag:"js:\"TEXTURE29\""},{prop:"TEXTURE30",name:"TEXTURE30",pkg:"",typ:$Int,tag:"js:\"TEXTURE30\""},{prop:"TEXTURE31",name:"TEXTURE31",pkg:"",typ:$Int,tag:"js:\"TEXTURE31\""},{prop:"TEXTURE_2D",name:"TEXTURE_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_2D\""},{prop:"TEXTURE_BINDING_2D",name:"TEXTURE_BINDING_2D",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_2D\""},{prop:"TEXTURE_BINDING_CUBE_MAP",name:"TEXTURE_BINDING_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_BINDING_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP",name:"TEXTURE_CUBE_MAP",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_X",name:"TEXTURE_CUBE_MAP_NEGATIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_X\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Y",name:"TEXTURE_CUBE_MAP_NEGATIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_NEGATIVE_Z",name:"TEXTURE_CUBE_MAP_NEGATIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_X",name:"TEXTURE_CUBE_MAP_POSITIVE_X",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_X\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Y",name:"TEXTURE_CUBE_MAP_POSITIVE_Y",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Y\""},{prop:"TEXTURE_CUBE_MAP_POSITIVE_Z",name:"TEXTURE_CUBE_MAP_POSITIVE_Z",pkg:"",typ:$Int,tag:"js:\"TEXTURE_CUBE_MAP_POSITIVE_Z\""},{prop:"TEXTURE_MAG_FILTER",name:"TEXTURE_MAG_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MAG_FILTER\""},{prop:"TEXTURE_MIN_FILTER",name:"TEXTURE_MIN_FILTER",pkg:"",typ:$Int,tag:"js:\"TEXTURE_MIN_FILTER\""},{prop:"TEXTURE_WRAP_S",name:"TEXTURE_WRAP_S",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_S\""},{prop:"TEXTURE_WRAP_T",name:"TEXTURE_WRAP_T",pkg:"",typ:$Int,tag:"js:\"TEXTURE_WRAP_T\""},{prop:"TRIANGLES",name:"TRIANGLES",pkg:"",typ:$Int,tag:"js:\"TRIANGLES\""},{prop:"TRIANGLE_FAN",name:"TRIANGLE_FAN",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_FAN\""},{prop:"TRIANGLE_STRIP",name:"TRIANGLE_STRIP",pkg:"",typ:$Int,tag:"js:\"TRIANGLE_STRIP\""},{prop:"UNPACK_ALIGNMENT",name:"UNPACK_ALIGNMENT",pkg:"",typ:$Int,tag:"js:\"UNPACK_ALIGNMENT\""},{prop:"UNPACK_COLORSPACE_CONVERSION_WEBGL",name:"UNPACK_COLORSPACE_CONVERSION_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\""},{prop:"UNPACK_FLIP_Y_WEBGL",name:"UNPACK_FLIP_Y_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_FLIP_Y_WEBGL\""},{prop:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",name:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",pkg:"",typ:$Int,tag:"js:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\""},{prop:"UNSIGNED_BYTE",name:"UNSIGNED_BYTE",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_BYTE\""},{prop:"UNSIGNED_INT",name:"UNSIGNED_INT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_INT\""},{prop:"UNSIGNED_SHORT",name:"UNSIGNED_SHORT",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT\""},{prop:"UNSIGNED_SHORT_4_4_4_4",name:"UNSIGNED_SHORT_4_4_4_4",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_4_4_4_4\""},{prop:"UNSIGNED_SHORT_5_5_5_1",name:"UNSIGNED_SHORT_5_5_5_1",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_5_5_1\""},{prop:"UNSIGNED_SHORT_5_6_5",name:"UNSIGNED_SHORT_5_6_5",pkg:"",typ:$Int,tag:"js:\"UNSIGNED_SHORT_5_6_5\""},{prop:"VALIDATE_STATUS",name:"VALIDATE_STATUS",pkg:"",typ:$Int,tag:"js:\"VALIDATE_STATUS\""},{prop:"VENDOR",name:"VENDOR",pkg:"",typ:$Int,tag:"js:\"VENDOR\""},{prop:"VERSION",name:"VERSION",pkg:"",typ:$Int,tag:"js:\"VERSION\""},{prop:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",name:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\""},{prop:"VERTEX_ATTRIB_ARRAY_ENABLED",name:"VERTEX_ATTRIB_ARRAY_ENABLED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_ENABLED\""},{prop:"VERTEX_ATTRIB_ARRAY_NORMALIZED",name:"VERTEX_ATTRIB_ARRAY_NORMALIZED",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\""},{prop:"VERTEX_ATTRIB_ARRAY_POINTER",name:"VERTEX_ATTRIB_ARRAY_POINTER",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_POINTER\""},{prop:"VERTEX_ATTRIB_ARRAY_SIZE",name:"VERTEX_ATTRIB_ARRAY_SIZE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_SIZE\""},{prop:"VERTEX_ATTRIB_ARRAY_STRIDE",name:"VERTEX_ATTRIB_ARRAY_STRIDE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_STRIDE\""},{prop:"VERTEX_ATTRIB_ARRAY_TYPE",name:"VERTEX_ATTRIB_ARRAY_TYPE",pkg:"",typ:$Int,tag:"js:\"VERTEX_ATTRIB_ARRAY_TYPE\""},{prop:"VERTEX_SHADER",name:"VERTEX_SHADER",pkg:"",typ:$Int,tag:"js:\"VERTEX_SHADER\""},{prop:"VIEWPORT",name:"VIEWPORT",pkg:"",typ:$Int,tag:"js:\"VIEWPORT\""},{prop:"ZERO",name:"ZERO",pkg:"",typ:$Int,tag:"js:\"ZERO\""}]);$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,N,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,Q,R,S,M,O,U,W;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["github.com/gopherjs/webgl"];E=$pkg.Texture=$newType(0,$kindStruct,"opengl.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});F=$pkg.Framebuffer=$newType(0,$kindStruct,"opengl.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});G=$pkg.Shader=$newType(0,$kindStruct,"opengl.Shader","Shader","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});H=$pkg.Program=$newType(0,$kindStruct,"opengl.Program","Program","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});I=$pkg.Buffer=$newType(0,$kindStruct,"opengl.Buffer","Buffer","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.UniformLocation=$newType(0,$kindStruct,"opengl.UniformLocation","UniformLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});K=$pkg.AttribLocation=$newType(4,$kindInt,"opengl.AttribLocation","AttribLocation","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);L=$pkg.ProgramID=$newType(4,$kindInt,"opengl.ProgramID","ProgramID","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);N=$pkg.context=$newType(0,$kindStruct,"opengl.context","context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(gl_,lastFramebuffer_){this.$val=this;if(arguments.length===0){this.gl=AD.nil;this.lastFramebuffer=new F.ptr(null);return;}this.gl=gl_;this.lastFramebuffer=lastFramebuffer_;});X=$pkg.Filter=$newType(4,$kindInt,"opengl.Filter","Filter","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Y=$pkg.ShaderType=$newType(4,$kindInt,"opengl.ShaderType","ShaderType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);Z=$pkg.BufferType=$newType(4,$kindInt,"opengl.BufferType","BufferType","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AA=$pkg.BufferUsage=$newType(4,$kindInt,"opengl.BufferUsage","BufferUsage","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AB=$pkg.Mode=$newType(4,$kindInt,"opengl.Mode","Mode","github.com/hajimehoshi/ebiten/internal/graphics/opengl",null);AC=$pkg.Context=$newType(0,$kindStruct,"opengl.Context","Context","github.com/hajimehoshi/ebiten/internal/graphics/opengl",function(Nearest_,Linear_,VertexShader_,FragmentShader_,ArrayBuffer_,ElementArrayBuffer_,DynamicDraw_,StaticDraw_,Triangles_,Lines_,context_){this.$val=this;if(arguments.length===0){this.Nearest=0;this.Linear=0;this.VertexShader=0;this.FragmentShader=0;this.ArrayBuffer=0;this.ElementArrayBuffer=0;this.DynamicDraw=0;this.StaticDraw=0;this.Triangles=0;this.Lines=0;this.context=new N.ptr(AD.nil,new F.ptr(null));return;}this.Nearest=Nearest_;this.Linear=Linear_;this.VertexShader=VertexShader_;this.FragmentShader=FragmentShader_;this.ArrayBuffer=ArrayBuffer_;this.ElementArrayBuffer=ElementArrayBuffer_;this.DynamicDraw=DynamicDraw_;this.StaticDraw=StaticDraw_;this.Triangles=Triangles_;this.Lines=Lines_;this.context=context_;});AD=$ptrType(D.Context);AE=$mapType($String,$Bool);AF=$sliceType($emptyInterface);AG=$sliceType($Uint8);AH=$sliceType($Float32);AI=$ptrType(C.Object);AJ=$sliceType(G);AK=$sliceType($Int16);AL=$ptrType(AC);H.ptr.prototype.Equals=function(a){var $ptr,a,b;a=$clone(a,H);b=$clone(this,H);return b.Object===a.Object;};H.prototype.Equals=function(a){return this.$val.Equals(a);};M=function(a){var $ptr,a;a=$clone(a,H);return(($parseInt(a.Object.__ebiten_programId)>>0)>>0);};$pkg.GetProgramID=M;O=function(){var $ptr,a,b,c,d,e,f,g;a=AD.nil;if($global.require===undefined){b=$global.document.querySelector($externalize("canvas",$String));c=$ifaceNil;d=D.NewContext(b,new D.ContextAttributes.ptr(true,false,false,false,true,false));a=d[0];c=d[1];if(!($interfaceIsEqual(c,$ifaceNil))){$panic(c);}}else{e=$makeMap($String.keyFor,[{k:"alpha",v:true},{k:"premultipliedAlpha",v:true}]);f=$global.require($externalize("gl",$String))(16,16,$externalize(e,AE));a=new D.Context.ptr(f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}g=new AC.ptr((($parseInt(a.Object.NEAREST)>>0)>>0),(($parseInt(a.Object.LINEAR)>>0)>>0),(($parseInt(a.Object.VERTEX_SHADER)>>0)>>0),(($parseInt(a.Object.FRAGMENT_SHADER)>>0)>>0),(($parseInt(a.Object.ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.ELEMENT_ARRAY_BUFFER)>>0)>>0),(($parseInt(a.Object.DYNAMIC_DRAW)>>0)>>0),(($parseInt(a.Object.STATIC_DRAW)>>0)>>0),(($parseInt(a.Object.TRIANGLES)>>0)>>0),(($parseInt(a.Object.LINES)>>0)>>0),new N.ptr(AD.nil,new F.ptr(null)));g.context.gl=a;g.init();return g;};$pkg.NewContext=O;AC.ptr.prototype.init=function(){var $ptr,a,b;a=this;b=a.context.gl;b.Enable($parseInt(b.Object.BLEND)>>0);b.BlendFunc($parseInt(b.Object.ONE)>>0,$parseInt(b.Object.ONE_MINUS_SRC_ALPHA)>>0);};AC.prototype.init=function(){return this.$val.init();};AC.ptr.prototype.Check=function(){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=this;b=a.context.gl;c=b.GetError();if(!((c===($parseInt(b.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:d=B.Sprintf("check failed: %d",new AF([new $Int(c)]));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$panic(new $String(d));case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.Check};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Check=function(){return this.$val.Check();};AC.ptr.prototype.NewTexture=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=this;f=e.context.gl;g=f.CreateTexture();if(g===null){return[new E.ptr(null),A.New("glGenTexture failed")];}f.PixelStorei($parseInt(f.Object.UNPACK_ALIGNMENT)>>0,4);f.BindTexture($parseInt(f.Object.TEXTURE_2D)>>0,g);f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MAG_FILTER)>>0,(d>>0));f.TexParameteri($parseInt(f.Object.TEXTURE_2D)>>0,$parseInt(f.Object.TEXTURE_MIN_FILTER)>>0,(d>>0));h=$ifaceNil;if(!(c===AG.nil)){h=c;}f.Object.texImage2D($parseInt(f.Object.TEXTURE_2D)>>0,0,$parseInt(f.Object.RGBA)>>0,a,b,0,$parseInt(f.Object.RGBA)>>0,$parseInt(f.Object.UNSIGNED_BYTE)>>0,$externalize(h,$emptyInterface));return[new E.ptr(g),$ifaceNil];};AC.prototype.NewTexture=function(a,b,c,d){return this.$val.NewTexture(a,b,c,d);};AC.ptr.prototype.bindFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;if(!(b.context.lastFramebuffer.Object===a.Object)){c.BindFramebuffer($parseInt(c.Object.FRAMEBUFFER)>>0,a.Object);F.copy(b.context.lastFramebuffer,a);}};AC.prototype.bindFramebuffer=function(a){return this.$val.bindFramebuffer(a);};AC.ptr.prototype.FramebufferPixels=function(a,b,c){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:a=$clone(a,F);d=this;e=d.context.gl;e.Flush();d.bindFramebuffer(a);f=new($global.Uint8Array)($imul(($imul(4,b)),c));e.ReadPixels(0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,f);g=e.GetError();if(!((g===($parseInt(e.Object.NO_ERROR)>>0)))){$s=1;continue;}$s=2;continue;case 1:h=B.Sprintf("gl error: %d",new AF([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return[AG.nil,i];case 2:return[$assertType($internalize(f,$emptyInterface),AG),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.FramebufferPixels};}$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;};AC.prototype.FramebufferPixels=function(a,b,c){return this.$val.FramebufferPixels(a,b,c);};AC.ptr.prototype.BindTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.BindTexture($parseInt(c.Object.TEXTURE_2D)>>0,a.Object);};AC.prototype.BindTexture=function(a){return this.$val.BindTexture(a);};AC.ptr.prototype.DeleteTexture=function(a){var $ptr,a,b,c;a=$clone(a,E);b=this;c=b.context.gl;c.DeleteTexture(a.Object);};AC.prototype.DeleteTexture=function(a){return this.$val.DeleteTexture(a);};AC.ptr.prototype.TexSubImage2D=function(a,b,c){var $ptr,a,b,c,d,e;d=this;e=d.context.gl;e.Object.texSubImage2D($parseInt(e.Object.TEXTURE_2D)>>0,0,0,0,b,c,$parseInt(e.Object.RGBA)>>0,$parseInt(e.Object.UNSIGNED_BYTE)>>0,$externalize(a,AG));};AC.prototype.TexSubImage2D=function(a,b,c){return this.$val.TexSubImage2D(a,b,c);};AC.ptr.prototype.NewFramebuffer=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:a=$clone(a,E);b=this;c=b.context.gl;d=c.CreateFramebuffer();b.bindFramebuffer(new F.ptr(d));c.FramebufferTexture2D($parseInt(c.Object.FRAMEBUFFER)>>0,$parseInt(c.Object.COLOR_ATTACHMENT0)>>0,$parseInt(c.Object.TEXTURE_2D)>>0,a.Object,0);e=c.CheckFramebufferStatus($parseInt(c.Object.FRAMEBUFFER)>>0);if(!((e===($parseInt(c.Object.FRAMEBUFFER_COMPLETE)>>0)))){$s=1;continue;}$s=2;continue;case 1:f=B.Sprintf("creating framebuffer failed: %d",new AF([new $Int(e)]));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.New(f);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=5;case 5:return[new F.ptr(null),g];case 2:return[new F.ptr(d),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewFramebuffer};}$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;};AC.prototype.NewFramebuffer=function(a){return this.$val.NewFramebuffer(a);};AC.ptr.prototype.SetViewport=function(a,b,c){var $ptr,a,b,c,d,e,f;a=$clone(a,F);d=this;if(a.Object===null){d.bindFramebuffer(a);e=d.context.gl;e.Viewport(0,0,b,c);return $ifaceNil;}d.bindFramebuffer(a);f=d.context.gl;f.Viewport(0,0,b,c);return $ifaceNil;};AC.prototype.SetViewport=function(a,b,c){return this.$val.SetViewport(a,b,c);};AC.ptr.prototype.FillFramebuffer=function(a,b,c,d){var $ptr,a,b,c,d,e,f;e=this;f=e.context.gl;f.ClearColor($fround(a),$fround(b),$fround(c),$fround(d));f.Clear($parseInt(f.Object.COLOR_BUFFER_BIT)>>0);return $ifaceNil;};AC.prototype.FillFramebuffer=function(a,b,c,d){return this.$val.FillFramebuffer(a,b,c,d);};AC.ptr.prototype.DeleteFramebuffer=function(a){var $ptr,a,b,c;a=$clone(a,F);b=this;c=b.context.gl;c.DeleteFramebuffer(a.Object);};AC.prototype.DeleteFramebuffer=function(a){return this.$val.DeleteFramebuffer(a);};AC.ptr.prototype.NewShader=function(a,b){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:c=this;d=c.context.gl;e=d.CreateShader((a>>0));if(e===null){return[new G.ptr(null),A.New("glCreateShader failed")];}d.ShaderSource(e,b);d.CompileShader(e);if(!d.GetShaderParameterb(e,$parseInt(d.Object.COMPILE_STATUS)>>0)){$s=1;continue;}$s=2;continue;case 1:f=d.GetShaderInfoLog(e);g=B.Sprintf("shader compile failed: %s",new AF([new $String(f)]));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=A.New(g);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[new G.ptr(null),h];case 2:return[new G.ptr(e),$ifaceNil];}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.NewShader};}$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;};AC.prototype.NewShader=function(a,b){return this.$val.NewShader(a,b);};AC.ptr.prototype.DeleteShader=function(a){var $ptr,a,b,c;a=$clone(a,G);b=this;c=b.context.gl;c.DeleteShader(a.Object);};AC.prototype.DeleteShader=function(a){return this.$val.DeleteShader(a);};AC.ptr.prototype.GlslHighpSupported=function(){var $ptr,a,b;a=this;b=a.context.gl;if(b.Object.getShaderPrecisionFormat===undefined){return false;}return!((($parseInt(b.Object.getShaderPrecisionFormat($parseInt(b.Object.FRAGMENT_SHADER)>>0,$parseInt(b.Object.HIGH_FLOAT)>>0).precision)>>0)===0));};AC.prototype.GlslHighpSupported=function(){return this.$val.GlslHighpSupported();};AC.ptr.prototype.NewProgram=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=b.context.gl;d=c.CreateProgram();if(d===null){return[new H.ptr(null),A.New("glCreateProgram failed")];}d.__ebiten_programId=Q;Q=Q+(1)>>0;e=a;f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]),G);c.AttachShader(d,g.Object);f++;}c.LinkProgram(d);if(!c.GetProgramParameterb(d,$parseInt(c.Object.LINK_STATUS)>>0)){return[new H.ptr(null),A.New("program error")];}return[new H.ptr(d),$ifaceNil];};AC.prototype.NewProgram=function(a){return this.$val.NewProgram(a);};AC.ptr.prototype.UseProgram=function(a){var $ptr,a,b,c;a=$clone(a,H);b=this;c=b.context.gl;c.UseProgram(a.Object);};AC.prototype.UseProgram=function(a){return this.$val.UseProgram(a);};AC.ptr.prototype.GetUniformLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return new J.ptr(d.GetUniformLocation(a.Object,b));};AC.prototype.GetUniformLocation=function(a,b){return this.$val.GetUniformLocation(a,b);};AC.ptr.prototype.UniformInt=function(a,b,c){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=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);e.Uniform1i(g.Object,c);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformInt};}$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;};AC.prototype.UniformInt=function(a,b,c){return this.$val.UniformInt(a,b,c);};AC.ptr.prototype.UniformFloats=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:a=$clone(a,H);d=this;e=d.context.gl;f=U(d,a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=$clone(f,J);h=c.$length;if(h===4){e.Object.uniform4fv(g.Object,$externalize(c,AH));}else if(h===16){e.UniformMatrix4fv(g.Object,false,c);}else{$panic(new $String("not reach"));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.UniformFloats};}$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;};AC.prototype.UniformFloats=function(a,b,c){return this.$val.UniformFloats(a,b,c);};AC.ptr.prototype.GetAttribLocation=function(a,b){var $ptr,a,b,c,d;a=$clone(a,H);c=this;d=c.context.gl;return(d.GetAttribLocation(a.Object,b)>>0);};AC.prototype.GetAttribLocation=function(a,b){return this.$val.GetAttribLocation(a,b);};AC.ptr.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){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=$clone(a,H);h=this;i=h.context.gl;j=W(h,a,b);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$parseInt(i.Object.SHORT)>>0;if(!c){l=$parseInt(i.Object.UNSIGNED_SHORT)>>0;}i.VertexAttribPointer((k>>0),f,l,d,e,g);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.VertexAttribPointer};}$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;};AC.prototype.VertexAttribPointer=function(a,b,c,d,e,f,g){return this.$val.VertexAttribPointer(a,b,c,d,e,f,g);};AC.ptr.prototype.EnableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.EnableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.EnableVertexAttribArray};}$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;};AC.prototype.EnableVertexAttribArray=function(a,b){return this.$val.EnableVertexAttribArray(a,b);};AC.ptr.prototype.DisableVertexAttribArray=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=$clone(a,H);c=this;d=c.context.gl;e=W(c,a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;d.DisableVertexAttribArray((f>>0));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.DisableVertexAttribArray};}$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;};AC.prototype.DisableVertexAttribArray=function(a,b){return this.$val.DisableVertexAttribArray(a,b);};AC.ptr.prototype.NewBuffer=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;e=d.context.gl;f=e.CreateBuffer();e.BindBuffer((a>>0),f);e.BufferData((a>>0),b,(c>>0));return new I.ptr(f);};AC.prototype.NewBuffer=function(a,b,c){return this.$val.NewBuffer(a,b,c);};AC.ptr.prototype.BindElementArrayBuffer=function(a){var $ptr,a,b,c;a=$clone(a,I);b=this;c=b.context.gl;c.BindBuffer($parseInt(c.Object.ELEMENT_ARRAY_BUFFER)>>0,a.Object);};AC.prototype.BindElementArrayBuffer=function(a){return this.$val.BindElementArrayBuffer(a);};AC.ptr.prototype.BufferSubData=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.BufferSubData((a>>0),0,b);};AC.prototype.BufferSubData=function(a,b){return this.$val.BufferSubData(a,b);};AC.ptr.prototype.DrawElements=function(a,b){var $ptr,a,b,c,d;c=this;d=c.context.gl;d.DrawElements((a>>0),b,$parseInt(d.Object.UNSIGNED_SHORT)>>0,0);};AC.prototype.DrawElements=function(a,b){return this.$val.DrawElements(a,b);};U=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:b=$clone(b,H);d=M(b);e=(f=R[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(R||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=R[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[new J.ptr(null),false]);l=$clone(i[0],J);m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetUniformLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}J.copy(l,n);o=c;((p=R[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:$clone(l,J)};case 2:return l;}return;}if($f===undefined){$f={$blk:U};}$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;};$pkg.GetUniformLocation=U;W=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:b=$clone(b,H);d=M(b);e=(f=S[L.keyFor(d)],f!==undefined?[f.v,true]:[false,false]);g=e[1];if(!g){h=d;(S||$throwRuntimeError("assignment to entry in nil map"))[L.keyFor(h)]={k:h,v:$makeMap($String.keyFor,[])};}i=(j=(k=S[L.keyFor(d)],k!==undefined?k.v:false)[$String.keyFor(c)],j!==undefined?[j.v,true]:[0,false]);l=i[0];m=i[1];if(!m){$s=1;continue;}$s=2;continue;case 1:n=a.GetAttribLocation(b,c);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;o=c;((p=S[L.keyFor(d)],p!==undefined?p.v:false)||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(o)]={k:o,v:l};case 2:return l;}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.GetAttribLocation=W;H.methods=[{prop:"Equals",name:"Equals",pkg:"",typ:$funcType([H],[$Bool],false)}];AL.methods=[{prop:"init",name:"init",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([],[],false)},{prop:"Check",name:"Check",pkg:"",typ:$funcType([],[],false)},{prop:"NewTexture",name:"NewTexture",pkg:"",typ:$funcType([$Int,$Int,AG,X],[E,$error],false)},{prop:"bindFramebuffer",name:"bindFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:$funcType([F],[],false)},{prop:"FramebufferPixels",name:"FramebufferPixels",pkg:"",typ:$funcType([F,$Int,$Int],[AG,$error],false)},{prop:"BindTexture",name:"BindTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"DeleteTexture",name:"DeleteTexture",pkg:"",typ:$funcType([E],[],false)},{prop:"TexSubImage2D",name:"TexSubImage2D",pkg:"",typ:$funcType([AG,$Int,$Int],[],false)},{prop:"NewFramebuffer",name:"NewFramebuffer",pkg:"",typ:$funcType([E],[F,$error],false)},{prop:"SetViewport",name:"SetViewport",pkg:"",typ:$funcType([F,$Int,$Int],[$error],false)},{prop:"FillFramebuffer",name:"FillFramebuffer",pkg:"",typ:$funcType([$Float64,$Float64,$Float64,$Float64],[$error],false)},{prop:"DeleteFramebuffer",name:"DeleteFramebuffer",pkg:"",typ:$funcType([F],[],false)},{prop:"NewShader",name:"NewShader",pkg:"",typ:$funcType([Y,$String],[G,$error],false)},{prop:"DeleteShader",name:"DeleteShader",pkg:"",typ:$funcType([G],[],false)},{prop:"GlslHighpSupported",name:"GlslHighpSupported",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"NewProgram",name:"NewProgram",pkg:"",typ:$funcType([AJ],[H,$error],false)},{prop:"UseProgram",name:"UseProgram",pkg:"",typ:$funcType([H],[],false)},{prop:"GetUniformLocation",name:"GetUniformLocation",pkg:"",typ:$funcType([H,$String],[J],false)},{prop:"UniformInt",name:"UniformInt",pkg:"",typ:$funcType([H,$String,$Int],[],false)},{prop:"UniformFloats",name:"UniformFloats",pkg:"",typ:$funcType([H,$String,AH],[],false)},{prop:"GetAttribLocation",name:"GetAttribLocation",pkg:"",typ:$funcType([H,$String],[K],false)},{prop:"VertexAttribPointer",name:"VertexAttribPointer",pkg:"",typ:$funcType([H,$String,$Bool,$Bool,$Int,$Int,$Int],[],false)},{prop:"EnableVertexAttribArray",name:"EnableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"DisableVertexAttribArray",name:"DisableVertexAttribArray",pkg:"",typ:$funcType([H,$String],[],false)},{prop:"NewBuffer",name:"NewBuffer",pkg:"",typ:$funcType([Z,$emptyInterface,AA],[I],false)},{prop:"BindElementArrayBuffer",name:"BindElementArrayBuffer",pkg:"",typ:$funcType([I],[],false)},{prop:"BufferSubData",name:"BufferSubData",pkg:"",typ:$funcType([Z,AK],[],false)},{prop:"DrawElements",name:"DrawElements",pkg:"",typ:$funcType([AB,$Int],[],false)}];E.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);F.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);G.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);H.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);I.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);J.init([{prop:"Object",name:"",pkg:"",typ:AI,tag:""}]);N.init([{prop:"gl",name:"gl",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:AD,tag:""},{prop:"lastFramebuffer",name:"lastFramebuffer",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:F,tag:""}]);AC.init([{prop:"Nearest",name:"Nearest",pkg:"",typ:X,tag:""},{prop:"Linear",name:"Linear",pkg:"",typ:X,tag:""},{prop:"VertexShader",name:"VertexShader",pkg:"",typ:Y,tag:""},{prop:"FragmentShader",name:"FragmentShader",pkg:"",typ:Y,tag:""},{prop:"ArrayBuffer",name:"ArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"ElementArrayBuffer",name:"ElementArrayBuffer",pkg:"",typ:Z,tag:""},{prop:"DynamicDraw",name:"DynamicDraw",pkg:"",typ:AA,tag:""},{prop:"StaticDraw",name:"StaticDraw",pkg:"",typ:AA,tag:""},{prop:"Triangles",name:"Triangles",pkg:"",typ:AB,tag:""},{prop:"Lines",name:"Lines",pkg:"",typ:AB,tag:""},{prop:"context",name:"",pkg:"github.com/hajimehoshi/ebiten/internal/graphics/opengl",typ:N,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.ZeroFramebuffer=new F.ptr(null);Q=0;R=$makeMap(L.keyFor,[]);S=$makeMap(L.keyFor,[]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,D,E,Y,Z,AA,H,I,F,G;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];D=$packages["unicode/utf8"];E=$pkg.Reader=$newType(0,$kindStruct,"bufio.Reader","Reader","bufio",function(buf_,rd_,r_,w_,err_,lastByte_,lastRuneSize_){this.$val=this;if(arguments.length===0){this.buf=Y.nil;this.rd=$ifaceNil;this.r=0;this.w=0;this.err=$ifaceNil;this.lastByte=0;this.lastRuneSize=0;return;}this.buf=buf_;this.rd=rd_;this.r=r_;this.w=w_;this.err=err_;this.lastByte=lastByte_;this.lastRuneSize=lastRuneSize_;});Y=$sliceType($Uint8);Z=$ptrType(E);AA=$sliceType(Y);F=function(a,b){var $ptr,a,b,c,d,e,f;c=$assertType(a,Z,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<16){b=16;}f=new E.ptr(Y.nil,$ifaceNil,0,0,$ifaceNil,0,0);f.reset($makeSlice(Y,b),a);return f;};$pkg.NewReaderSize=F;G=function(a){var $ptr,a;return F(a,4096);};$pkg.NewReader=G;E.ptr.prototype.Reset=function(a){var $ptr,a,b;b=this;b.reset(b.buf,a);};E.prototype.Reset=function(a){return this.$val.Reset(a);};E.ptr.prototype.reset=function(a,b){var $ptr,a,b,c;c=this;E.copy(c,new E.ptr(a,b,0,0,$ifaceNil,-1,-1));};E.prototype.reset=function(a,b){return this.$val.reset(a,b);};E.ptr.prototype.fill=function(){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=this;if(a.r>0){$copySlice(a.buf,$subslice(a.buf,a.r,a.w));a.w=a.w-(a.r)>>0;a.r=0;}if(a.w>=a.buf.$length){$panic(new $String("bufio: tried to fill full buffer"));}b=100;case 1:if(!(b>0)){$s=2;continue;}d=a.rd.Read($subslice(a.buf,a.w));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(e<0){$panic(H);}a.w=a.w+(e)>>0;if(!($interfaceIsEqual(f,$ifaceNil))){a.err=f;return;}if(e>0){return;}b=b-(1)>>0;$s=1;continue;case 2:a.err=C.ErrNoProgress;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.fill};}$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;};E.prototype.fill=function(){return this.$val.fill();};E.ptr.prototype.readErr=function(){var $ptr,a,b;a=this;b=a.err;a.err=$ifaceNil;return b;};E.prototype.readErr=function(){return this.$val.readErr();};E.ptr.prototype.Peek=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;if(a<0){return[Y.nil,$pkg.ErrNegativeCount];}if(a>b.buf.$length){return[Y.nil,$pkg.ErrBufferFull];}case 1:if(!((b.w-b.r>>0)>0;if(d>0)),c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Peek};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Peek=function(a){return this.$val.Peek(a);};E.ptr.prototype.Discard=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=0;c=$ifaceNil;d=this;if(a<0){e=0;f=$pkg.ErrNegativeCount;b=e;c=f;return[b,c];}if(a===0){return[b,c];}g=a;case 1:h=d.Buffered();if(h===0){$s=3;continue;}$s=4;continue;case 3:$r=d.fill();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=d.Buffered();case 4:if(h>g){h=g;}d.r=d.r+(h)>>0;g=g-(h)>>0;if(g===0){i=a;j=$ifaceNil;b=i;c=j;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){k=a-g>>0;l=d.readErr();b=k;c=l;return[b,c];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Discard};}$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;};E.prototype.Discard=function(a){return this.$val.Discard(a);};E.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;b=a.$length;if(b===0){e=0;f=d.readErr();b=e;c=f;return[b,c];}if(d.r===d.w){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.readErr();b=g;c=h;return[b,c];}if(a.$length>=d.buf.$length){$s=3;continue;}$s=4;continue;case 3:j=d.rd.Read(a);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];d.err=i[1];if(b<0){$panic(H);}if(b>0){d.lastByte=((k=b-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))>>0);d.lastRuneSize=-1;}l=b;m=d.readErr();b=l;c=m;return[b,c];case 4:$r=d.fill();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d.r===d.w){n=0;o=d.readErr();b=n;c=o;return[b,c];}case 2:b=$copySlice(a,$subslice(d.buf,d.r,d.w));d.r=d.r+(b)>>0;d.lastByte=((p=d.buf,q=d.r-1>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>0);d.lastRuneSize=-1;r=b;s=$ifaceNil;b=r;c=s;return[b,c];}return;}if($f===undefined){$f={$blk:E.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.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.Read=function(a){return this.$val.Read(a);};E.ptr.prototype.ReadByte=function(){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:a=0;b=$ifaceNil;c=this;c.lastRuneSize=-1;case 1:if(!(c.r===c.w)){$s=2;continue;}if(!($interfaceIsEqual(c.err,$ifaceNil))){d=0;e=c.readErr();a=d;b=e;return[a,b];}$r=c.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:a=(f=c.buf,g=c.r,((g<0||g>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]));c.r=c.r+(1)>>0;c.lastByte=(a>>0);h=a;i=$ifaceNil;a=h;b=i;return[a,b];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadByte};}$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;};E.prototype.ReadByte=function(){return this.$val.ReadByte();};E.ptr.prototype.UnreadByte=function(){var $ptr,a,b,c;a=this;if(a.lastByte<0||(a.r===0)&&a.w>0){return $pkg.ErrInvalidUnreadByte;}if(a.r>0){a.r=a.r-(1)>>0;}else{a.w=1;}(b=a.buf,c=a.r,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]=(a.lastByte<<24>>>24)));a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadByte=function(){return this.$val.UnreadByte();};E.ptr.prototype.ReadRune=function(){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:a=0;b=0;c=$ifaceNil;d=this;case 1:if(!((d.r+4>>0)>d.w&&!D.FullRune($subslice(d.buf,d.r,d.w))&&$interfaceIsEqual(d.err,$ifaceNil)&&(d.w-d.r>>0)=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))>>0);k=1;a=h;b=k;if(a>=128){l=D.DecodeRune($subslice(d.buf,d.r,d.w));a=l[0];b=l[1];}d.r=d.r+(b)>>0;d.lastByte=((m=d.buf,n=d.r-1>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))>>0);d.lastRuneSize=b;o=a;p=b;q=$ifaceNil;a=o;b=p;c=q;return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadRune};}$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;};E.prototype.ReadRune=function(){return this.$val.ReadRune();};E.ptr.prototype.UnreadRune=function(){var $ptr,a;a=this;if(a.lastRuneSize<0||a.r>0;a.lastByte=-1;a.lastRuneSize=-1;return $ifaceNil;};E.prototype.UnreadRune=function(){return this.$val.UnreadRune();};E.ptr.prototype.Buffered=function(){var $ptr,a;a=this;return a.w-a.r>>0;};E.prototype.Buffered=function(){return this.$val.Buffered();};E.ptr.prototype.ReadSlice=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=Y.nil;c=$ifaceNil;d=this;case 1:e=A.IndexByte($subslice(d.buf,d.r,d.w),a);if(e>=0){b=$subslice(d.buf,d.r,((d.r+e>>0)+1>>0));d.r=d.r+((e+1>>0))>>0;$s=2;continue;}if(!($interfaceIsEqual(d.err,$ifaceNil))){b=$subslice(d.buf,d.r,d.w);d.r=d.w;c=d.readErr();$s=2;continue;}if(d.Buffered()>=d.buf.$length){d.r=d.w;b=d.buf;c=$pkg.ErrBufferFull;$s=2;continue;}$r=d.fill();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:f=b.$length-1>>0;if(f>=0){d.lastByte=(((f<0||f>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+f])>>0);d.lastRuneSize=-1;}return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadSlice};}$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;};E.prototype.ReadSlice=function(a){return this.$val.ReadSlice(a);};E.ptr.prototype.ReadLine=function(){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=Y.nil;b=false;c=$ifaceNil;d=this;f=d.ReadSlice(10);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];c=e[1];if($interfaceIsEqual(c,$pkg.ErrBufferFull)){if(a.$length>0&&((g=a.$length-1>>0,((g<0||g>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+g]))===13)){if(d.r===0){$panic(new $String("bufio: tried to rewind past start of buffer"));}d.r=d.r-(1)>>0;a=$subslice(a,0,(a.$length-1>>0));}h=a;i=true;j=$ifaceNil;a=h;b=i;c=j;return[a,b,c];}if(a.$length===0){if(!($interfaceIsEqual(c,$ifaceNil))){a=Y.nil;}return[a,b,c];}c=$ifaceNil;if((k=a.$length-1>>0,((k<0||k>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+k]))===10){l=1;if(a.$length>1&&((m=a.$length-2>>0,((m<0||m>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+m]))===13)){l=2;}a=$subslice(a,0,(a.$length-l>>0));}return[a,b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadLine};}$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;};E.prototype.ReadLine=function(){return this.$val.ReadLine();};E.ptr.prototype.ReadBytes=function(a){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:b=Y.nil;c=$ifaceNil;d=this;e=Y.nil;f=AA.nil;case 1:g=$ifaceNil;i=d.ReadSlice(a);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;e=h[0];g=h[1];if($interfaceIsEqual(g,$ifaceNil)){$s=2;continue;}if(!($interfaceIsEqual(g,$pkg.ErrBufferFull))){c=g;$s=2;continue;}j=$makeSlice(Y,e.$length);$copySlice(j,e);f=$append(f,j);$s=1;continue;case 2:k=0;l=f;m=0;while(true){if(!(m=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+n]).$length)>>0;m++;}k=k+(e.$length)>>0;o=$makeSlice(Y,k);k=0;p=f;q=0;while(true){if(!(q=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+r])))>>0;q++;}$copySlice($subslice(o,k),e);s=o;t=c;b=s;c=t;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadBytes};}$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;};E.prototype.ReadBytes=function(a){return this.$val.ReadBytes(a);};E.ptr.prototype.ReadString=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="";c=$ifaceNil;d=this;f=d.ReadBytes(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];c=e[1];b=$bytesToString(g);h=b;i=c;b=h;c=i;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.ReadString};}$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;};E.prototype.ReadString=function(a){return this.$val.ReadString(a);};E.ptr.prototype.WriteTo=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,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;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=new $Int64(0,0);c=$ifaceNil;d=this;f=d.writeBuf(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b=e[0];c=e[1];if(!($interfaceIsEqual(c,$ifaceNil))){return[b,c];}g=$assertType(d.rd,C.WriterTo,true);h=g[0];i=g[1];if(i){$s=2;continue;}$s=3;continue;case 2:k=h.WriteTo(a);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];b=(n=l,new $Int64(b.$high+n.$high,b.$low+n.$low));o=b;p=m;b=o;c=p;return[b,c];case 3:q=$assertType(a,C.ReaderFrom,true);r=q[0];s=q[1];if(s){$s=5;continue;}$s=6;continue;case 5:u=r.ReadFrom(d.rd);$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];b=(x=v,new $Int64(b.$high+x.$high,b.$low+x.$low));y=b;z=w;b=y;c=z;return[b,c];case 6:if((d.w-d.r>>0)>0;return[new $Int64(0,e),f];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.writeBuf};}$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;};E.prototype.writeBuf=function(a){return this.$val.writeBuf(a);};Z.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Reader],[],false)},{prop:"reset",name:"reset",pkg:"bufio",typ:$funcType([Y,C.Reader],[],false)},{prop:"fill",name:"fill",pkg:"bufio",typ:$funcType([],[],false)},{prop:"readErr",name:"readErr",pkg:"bufio",typ:$funcType([],[$error],false)},{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[Y,$error],false)},{prop:"Discard",name:"Discard",pkg:"",typ:$funcType([$Int],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([Y],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ReadSlice",name:"ReadSlice",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadLine",name:"ReadLine",pkg:"",typ:$funcType([],[Y,$Bool,$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[Y,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([C.Writer],[$Int64,$error],false)},{prop:"writeBuf",name:"writeBuf",pkg:"bufio",typ:$funcType([C.Writer],[$Int64,$error],false)}];E.init([{prop:"buf",name:"buf",pkg:"bufio",typ:Y,tag:""},{prop:"rd",name:"rd",pkg:"bufio",typ:C.Reader,tag:""},{prop:"r",name:"r",pkg:"bufio",typ:$Int,tag:""},{prop:"w",name:"w",pkg:"bufio",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"bufio",typ:$error,tag:""},{prop:"lastByte",name:"lastByte",pkg:"bufio",typ:$Int,tag:""},{prop:"lastRuneSize",name:"lastRuneSize",pkg:"bufio",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=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.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");H=B.New("bufio: reader returned negative count from Read");I=B.New("bufio: writer returned negative count from Write");$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,L,U,Y,AC,AE,AF,K,M,N,O,P,Q,R,S,T,V,W,Z,AA,AB,AD;A=$pkg.Color=$newType(8,$kindInterface,"color.Color","Color","image/color",null);B=$pkg.RGBA=$newType(0,$kindStruct,"color.RGBA","RGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});C=$pkg.RGBA64=$newType(0,$kindStruct,"color.RGBA64","RGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});D=$pkg.NRGBA=$newType(0,$kindStruct,"color.NRGBA","NRGBA","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});E=$pkg.NRGBA64=$newType(0,$kindStruct,"color.NRGBA64","NRGBA64","image/color",function(R_,G_,B_,A_){this.$val=this;if(arguments.length===0){this.R=0;this.G=0;this.B=0;this.A=0;return;}this.R=R_;this.G=G_;this.B=B_;this.A=A_;});F=$pkg.Alpha=$newType(0,$kindStruct,"color.Alpha","Alpha","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});G=$pkg.Alpha16=$newType(0,$kindStruct,"color.Alpha16","Alpha16","image/color",function(A_){this.$val=this;if(arguments.length===0){this.A=0;return;}this.A=A_;});H=$pkg.Gray=$newType(0,$kindStruct,"color.Gray","Gray","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});I=$pkg.Gray16=$newType(0,$kindStruct,"color.Gray16","Gray16","image/color",function(Y_){this.$val=this;if(arguments.length===0){this.Y=0;return;}this.Y=Y_;});J=$pkg.Model=$newType(8,$kindInterface,"color.Model","Model","image/color",null);L=$pkg.modelFunc=$newType(0,$kindStruct,"color.modelFunc","modelFunc","image/color",function(f_){this.$val=this;if(arguments.length===0){this.f=$throwNilPointerError;return;}this.f=f_;});U=$pkg.Palette=$newType(12,$kindSlice,"color.Palette","Palette","image/color",null);Y=$pkg.YCbCr=$newType(0,$kindStruct,"color.YCbCr","YCbCr","image/color",function(Y_,Cb_,Cr_){this.$val=this;if(arguments.length===0){this.Y=0;this.Cb=0;this.Cr=0;return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;});AC=$pkg.CMYK=$newType(0,$kindStruct,"color.CMYK","CMYK","image/color",function(C_,M_,Y_,K_){this.$val=this;if(arguments.length===0){this.C=0;this.M=0;this.Y=0;this.K=0;return;}this.C=C_;this.M=M_;this.Y=Y_;this.K=K_;});AE=$ptrType(L);AF=$funcType([A],[A],false);B.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=0;d=0;e=$clone(this,B);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};B.prototype.RGBA=function(){return this.$val.RGBA();};C.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,C);f=(e.R>>>0);g=(e.G>>>0);h=(e.B>>>0);i=(e.A>>>0);a=f;b=g;c=h;d=i;return[a,b,c,d];};C.prototype.RGBA=function(){return this.$val.RGBA();};D.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,D);a=(e.R>>>0);a=(a|((a<<8>>>0)))>>>0;a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(255),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=(b|((b<<8>>>0)))>>>0;b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(255),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=(c|((c<<8>>>0)))>>>0;c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(255),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;return[a,b,c,d];};D.prototype.RGBA=function(){return this.$val.RGBA();};E.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=0;b=0;c=0;d=0;e=$clone(this,E);a=(e.R>>>0);a=$imul(a,((e.A>>>0)))>>>0;a=(f=a/(65535),(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));b=(e.G>>>0);b=$imul(b,((e.A>>>0)))>>>0;b=(g=b/(65535),(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));c=(e.B>>>0);c=$imul(c,((e.A>>>0)))>>>0;c=(h=c/(65535),(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));d=(e.A>>>0);return[a,b,c,d];};E.prototype.RGBA=function(){return this.$val.RGBA();};F.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,F);d=(e.A>>>0);d=(d|((d<<8>>>0)))>>>0;f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};F.prototype.RGBA=function(){return this.$val.RGBA();};G.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i;a=0;b=0;c=0;d=0;e=$clone(this,G);d=(e.A>>>0);f=d;g=d;h=d;i=d;a=f;b=g;c=h;d=i;return[a,b,c,d];};G.prototype.RGBA=function(){return this.$val.RGBA();};H.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,H);f=(e.Y>>>0);f=(f|((f<<8>>>0)))>>>0;g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};H.prototype.RGBA=function(){return this.$val.RGBA();};I.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=0;d=0;e=$clone(this,I);f=(e.Y>>>0);g=f;h=f;i=f;j=65535;a=g;b=h;c=i;d=j;return[a,b,c,d];};I.prototype.RGBA=function(){return this.$val.RGBA();};K=function(a){var $ptr,a;return new L.ptr(a);};$pkg.ModelFunc=K;L.ptr.prototype.Convert=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.f(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:L.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};L.prototype.Convert=function(a){return this.$val.Convert(a);};M=function(a){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:b=$assertType(a,B,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new B.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new j.constructor.elem(j));}return;}if($f===undefined){$f={$blk:M};}$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;};N=function(a){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:b=$assertType(a,C,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];return(j=new C.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new j.constructor.elem(j));}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.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,D,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),255),new j.constructor.elem(j));}if(i===0){return(k=new D.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new D.ptr(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:O};}$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.$s=$s;$f.$r=$r;return $f;};P=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=$assertType(a,E,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=d[3];if(i===65535){return(j=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),65535),new j.constructor.elem(j));}if(i===0){return(k=new E.ptr(0,0,0,0),new k.constructor.elem(k));}f=(l=(($imul(f,65535)>>>0))/i,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));g=(m=(($imul(g,65535)>>>0))/i,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));h=(n=(($imul(h,65535)>>>0))/i,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));return(o=new E.ptr((f<<16>>>16),(g<<16>>>16),(h<<16>>>16),(i<<16>>>16)),new o.constructor.elem(o));}return;}if($f===undefined){$f={$blk:P};}$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.$s=$s;$f.$r=$r;return $f;};Q=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=$assertType(a,F,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new F.ptr(((f>>>8>>>0)<<24>>>24)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:Q};}$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;};R=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=$assertType(a,G,true);c=b[1];if(c){return a;}e=a.RGBA();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[3];return(g=new G.ptr((f<<16>>>16)),new g.constructor.elem(g));}return;}if($f===undefined){$f={$blk:R};}$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;};S=function(a){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:b=$assertType(a,H,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new H.ptr(((j>>>8>>>0)<<24>>>24)),new k.constructor.elem(k));}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.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};T=function(a){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:b=$assertType(a,I,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];j=(i=((((($imul(299,f)>>>0)+($imul(587,g)>>>0)>>>0)+($imul(114,h)>>>0)>>>0)+500>>>0))/1000,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));return(k=new I.ptr((j<<16>>>16)),new k.constructor.elem(k));}return;}if($f===undefined){$f={$blk:T};}$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;};U.prototype.Convert=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;if(b.$length===0){return $ifaceNil;}d=b.Index(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=2;case 2:return(c=d,((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]));}return;}if($f===undefined){$f={$blk:U.prototype.Convert};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(U).prototype.Convert=function(a){return this.$get().Convert(a);};U.prototype.Index=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=a.RGBA();$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];h=c[3];i=0;j=4294967295;k=i;l=j;m=b;n=0;case 2:if(!(n=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]);r=p.RGBA();$s=4;case 4: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];v=q[3];w=((V(e,s)+V(f,t)>>>0)+V(g,u)>>>0)+V(h,v)>>>0;if(wb){c=a-b>>>0;}else{c=b-a>>>0;}return(($imul(c,c)>>>0))>>>2>>>0;};W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i;d=(a>>0);e=(b>>0);f=(c>>0);g=((((($imul(19595,d))+($imul(38470,e))>>0)+($imul(7471,f))>>0)+32768>>0))>>16>>0;h=((((($imul(-11056,d))-($imul(21712,e))>>0)+($imul(32768,f))>>0)+8421376>>0))>>16>>0;i=((((($imul(32768,d))-($imul(27440,e))>>0)-($imul(5328,f))>>0)+8421376>>0))>>16>>0;if(g<0){g=0;}else if(g>255){g=255;}if(h<0){h=0;}else if(h>255){h=255;}if(i<0){i=0;}else if(i>255){i=255;}return[(g<<24>>>24),(h<<24>>>24),(i<<24>>>24)];};$pkg.RGBToYCbCr=W;Y.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g;a=$clone(this,Y);b=$imul((a.Y>>0),65792);c=(a.Cb>>0)-128>>0;d=(a.Cr>>0)-128>>0;e=((b+($imul(91881,d))>>0))>>8>>0;f=(((b-($imul(22554,c))>>0)-($imul(46802,d))>>0))>>8>>0;g=((b+($imul(116130,c))>>0))>>8>>0;if(e<0){e=0;}else if(e>65535){e=65535;}if(f<0){f=0;}else if(f>65535){f=65535;}if(g<0){g=0;}else if(g>65535){g=65535;}return[(e>>>0),(f>>>0),(g>>>0),65535];};Y.prototype.RGBA=function(){return this.$val.RGBA();};Z=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=$assertType(a,Y,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=W(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];return(m=new Y.ptr(j,k,l),new m.constructor.elem(m));}return;}if($f===undefined){$f={$blk:Z};}$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;};AA=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=(a>>>0);e=(b>>>0);f=(c>>>0);g=d;if(g>>0)),255)>>>0)/g,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul(((g-e>>>0)),255)>>>0)/g,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));m=(l=($imul(((g-f>>>0)),255)>>>0)/g,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));return[(i<<24>>>24),(k<<24>>>24),(m<<24>>>24),((255-g>>>0)<<24>>>24)];};$pkg.RGBToCMYK=AA;AB=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k;e=(65535-($imul((d>>>0),257)>>>0)>>>0);g=(f=($imul((65535-($imul((a>>>0),257)>>>0)>>>0),e)>>>0)/65535,(f===f&&f!==1/0&&f!==-1/0)?f>>>0:$throwRuntimeError("integer divide by zero"));i=(h=($imul((65535-($imul((b>>>0),257)>>>0)>>>0),e)>>>0)/65535,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero"));k=(j=($imul((65535-($imul((c>>>0),257)>>>0)>>>0),e)>>>0)/65535,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero"));return[((g>>>8>>>0)<<24>>>24),((i>>>8>>>0)<<24>>>24),((k>>>8>>>0)<<24>>>24)];};$pkg.CMYKToRGB=AB;AC.ptr.prototype.RGBA=function(){var $ptr,a,b,c,d,e,f,g,h;a=$clone(this,AC);b=(65535-($imul((a.K>>>0),257)>>>0)>>>0);d=(c=($imul((65535-($imul((a.C>>>0),257)>>>0)>>>0),b)>>>0)/65535,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"));f=(e=($imul((65535-($imul((a.M>>>0),257)>>>0)>>>0),b)>>>0)/65535,(e===e&&e!==1/0&&e!==-1/0)?e>>>0:$throwRuntimeError("integer divide by zero"));h=(g=($imul((65535-($imul((a.Y>>>0),257)>>>0)>>>0),b)>>>0)/65535,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero"));return[d,f,h,65535];};AC.prototype.RGBA=function(){return this.$val.RGBA();};AD=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:b=$assertType(a,AC,true);c=b[1];if(c){return a;}e=a.RGBA();$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];h=d[2];i=AA(((f>>>8>>>0)<<24>>>24),((g>>>8>>>0)<<24>>>24),((h>>>8>>>0)<<24>>>24));j=i[0];k=i[1];l=i[2];m=i[3];return(n=new AC.ptr(j,k,l,m),new n.constructor.elem(n));}return;}if($f===undefined){$f={$blk:AD};}$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;};B.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];C.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];D.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];E.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];F.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];G.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];H.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];I.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AE.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}];U.methods=[{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([A],[$Int],false)}];Y.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];AC.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}];A.init([{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)}]);B.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);C.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);D.init([{prop:"R",name:"R",pkg:"",typ:$Uint8,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint8,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint8,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);E.init([{prop:"R",name:"R",pkg:"",typ:$Uint16,tag:""},{prop:"G",name:"G",pkg:"",typ:$Uint16,tag:""},{prop:"B",name:"B",pkg:"",typ:$Uint16,tag:""},{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);F.init([{prop:"A",name:"A",pkg:"",typ:$Uint8,tag:""}]);G.init([{prop:"A",name:"A",pkg:"",typ:$Uint16,tag:""}]);H.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""}]);I.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint16,tag:""}]);J.init([{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([A],[A],false)}]);L.init([{prop:"f",name:"f",pkg:"image/color",typ:AF,tag:""}]);U.init(A);Y.init([{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:$Uint8,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:$Uint8,tag:""}]);AC.init([{prop:"C",name:"C",pkg:"",typ:$Uint8,tag:""},{prop:"M",name:"M",pkg:"",typ:$Uint8,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Uint8,tag:""},{prop:"K",name:"K",pkg:"",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:$pkg.RGBAModel=K(M);$pkg.RGBA64Model=K(N);$pkg.NRGBAModel=K(O);$pkg.NRGBA64Model=K(P);$pkg.AlphaModel=K(Q);$pkg.Alpha16Model=K(R);$pkg.GrayModel=K(S);$pkg.Gray16Model=K(T);$pkg.Black=new I.ptr(0);$pkg.White=new I.ptr(65535);$pkg.Transparent=new G.ptr(0);$pkg.Opaque=new G.ptr(65535);$pkg.YCbCrModel=K(Z);$pkg.CMYKModel=K(AD);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image"]=(function(){var $pkg={},$init,A,B,D,C,E,F,I,O,Q,S,T,V,X,Z,AB,AD,AF,AH,AJ,AL,AN,AP,AR,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,G,a,b,c,d,H,J,K,L,M,R,W,Y,AA,AC,AI,AK,AM,AO,AQ,AT;A=$packages["bufio"];B=$packages["errors"];D=$packages["image/color"];C=$packages["io"];E=$packages["strconv"];F=$pkg.format=$newType(0,$kindStruct,"image.format","format","image",function(name_,magic_,decode_,decodeConfig_){this.$val=this;if(arguments.length===0){this.name="";this.magic="";this.decode=$throwNilPointerError;this.decodeConfig=$throwNilPointerError;return;}this.name=name_;this.magic=magic_;this.decode=decode_;this.decodeConfig=decodeConfig_;});I=$pkg.reader=$newType(8,$kindInterface,"image.reader","reader","image",null);O=$pkg.Point=$newType(0,$kindStruct,"image.Point","Point","image",function(X_,Y_){this.$val=this;if(arguments.length===0){this.X=0;this.Y=0;return;}this.X=X_;this.Y=Y_;});Q=$pkg.Rectangle=$newType(0,$kindStruct,"image.Rectangle","Rectangle","image",function(Min_,Max_){this.$val=this;if(arguments.length===0){this.Min=new O.ptr(0,0);this.Max=new O.ptr(0,0);return;}this.Min=Min_;this.Max=Max_;});S=$pkg.Config=$newType(0,$kindStruct,"image.Config","Config","image",function(ColorModel_,Width_,Height_){this.$val=this;if(arguments.length===0){this.ColorModel=$ifaceNil;this.Width=0;this.Height=0;return;}this.ColorModel=ColorModel_;this.Width=Width_;this.Height=Height_;});T=$pkg.Image=$newType(8,$kindInterface,"image.Image","Image","image",null);V=$pkg.RGBA=$newType(0,$kindStruct,"image.RGBA","RGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});X=$pkg.RGBA64=$newType(0,$kindStruct,"image.RGBA64","RGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});Z=$pkg.NRGBA=$newType(0,$kindStruct,"image.NRGBA","NRGBA","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AB=$pkg.NRGBA64=$newType(0,$kindStruct,"image.NRGBA64","NRGBA64","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AD=$pkg.Alpha=$newType(0,$kindStruct,"image.Alpha","Alpha","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AF=$pkg.Alpha16=$newType(0,$kindStruct,"image.Alpha16","Alpha16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AH=$pkg.Gray=$newType(0,$kindStruct,"image.Gray","Gray","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AJ=$pkg.Gray16=$newType(0,$kindStruct,"image.Gray16","Gray16","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AL=$pkg.CMYK=$newType(0,$kindStruct,"image.CMYK","CMYK","image",function(Pix_,Stride_,Rect_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;});AN=$pkg.Paletted=$newType(0,$kindStruct,"image.Paletted","Paletted","image",function(Pix_,Stride_,Rect_,Palette_){this.$val=this;if(arguments.length===0){this.Pix=AV.nil;this.Stride=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));this.Palette=D.Palette.nil;return;}this.Pix=Pix_;this.Stride=Stride_;this.Rect=Rect_;this.Palette=Palette_;});AP=$pkg.Uniform=$newType(0,$kindStruct,"image.Uniform","Uniform","image",function(C_){this.$val=this;if(arguments.length===0){this.C=$ifaceNil;return;}this.C=C_;});AR=$pkg.YCbCrSubsampleRatio=$newType(4,$kindInt,"image.YCbCrSubsampleRatio","YCbCrSubsampleRatio","image",null);AS=$pkg.YCbCr=$newType(0,$kindStruct,"image.YCbCr","YCbCr","image",function(Y_,Cb_,Cr_,YStride_,CStride_,SubsampleRatio_,Rect_){this.$val=this;if(arguments.length===0){this.Y=AV.nil;this.Cb=AV.nil;this.Cr=AV.nil;this.YStride=0;this.CStride=0;this.SubsampleRatio=0;this.Rect=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));return;}this.Y=Y_;this.Cb=Cb_;this.Cr=Cr_;this.YStride=YStride_;this.CStride=CStride_;this.SubsampleRatio=SubsampleRatio_;this.Rect=Rect_;});AU=$sliceType(F);AV=$sliceType($Uint8);AW=$arrayType($Bool,256);AX=$funcType([C.Reader],[T,$error],false);AY=$funcType([C.Reader],[S,$error],false);AZ=$ptrType(V);BA=$ptrType(X);BB=$ptrType(Z);BC=$ptrType(AB);BD=$ptrType(AD);BE=$ptrType(AF);BF=$ptrType(AH);BG=$ptrType(AJ);BH=$ptrType(AL);BI=$ptrType(AN);BJ=$ptrType(AP);BK=$ptrType(AS);H=function(e,f,g,h){var $ptr,e,f,g,h;G=$append(G,new F.ptr(e,f,g,h));};$pkg.RegisterFormat=H;J=function(e){var $ptr,e,f,g,h;f=$assertType(e,I,true);g=f[0];h=f[1];if(h){return g;}return A.NewReader(e);};K=function(e,f){var $ptr,e,f,g,h,i,j;if(!((e.length===f.$length))){return false;}g=f;h=0;while(true){if(!(h=g.$length)?$throwRuntimeError("index out of range"):g.$array[g.$offset+h]);if(!((e.charCodeAt(i)===j))&&!((e.charCodeAt(i)===63))){return false;}h++;}return true;};L=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=G;g=0;case 1:if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),F);j=e.Peek(h.magic.length);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if($interfaceIsEqual(l,$ifaceNil)&&K(h.magic,k)){return h;}g++;$s=1;continue;case 2:return new F.ptr("","",$throwNilPointerError,$throwNilPointerError);}return;}if($f===undefined){$f={$blk:L};}$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;};M=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=J(e);g=L(f);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$clone(g,F);if(h.decode===$throwNilPointerError){return[$ifaceNil,"",$pkg.ErrFormat];}j=h.decode(f);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];return[k,h.name,l];}return;}if($f===undefined){$f={$blk:M};}$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;};$pkg.Decode=M;O.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,O);return"("+E.Itoa(e.X)+","+E.Itoa(e.Y)+")";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X+e.X>>0,f.Y+e.Y>>0);};O.prototype.Add=function(e){return this.$val.Add(e);};O.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return new O.ptr(f.X-e.X>>0,f.Y-e.Y>>0);};O.prototype.Sub=function(e){return this.$val.Sub(e);};O.ptr.prototype.Mul=function(e){var $ptr,e,f;f=$clone(this,O);return new O.ptr($imul(f.X,e),$imul(f.Y,e));};O.prototype.Mul=function(e){return this.$val.Mul(e);};O.ptr.prototype.Div=function(e){var $ptr,e,f,g,h;f=$clone(this,O);return new O.ptr((g=f.X/e,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),(h=f.Y/e,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")));};O.prototype.Div=function(e){return this.$val.Div(e);};O.ptr.prototype.In=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,O);return e.Min.X<=f.X&&f.X>0;}f.Y=(l=f.Y%j,l===l?l:$throwRuntimeError("integer divide by zero"));if(f.Y<0){f.Y=f.Y+(j)>>0;}return f.Add(e.Min);};O.prototype.Mod=function(e){return this.$val.Mod(e);};O.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,O);return $equal(f,e,O);};O.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.String=function(){var $ptr,e;e=$clone(this,Q);return e.Min.String()+"-"+e.Max.String();};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.Dx=function(){var $ptr,e;e=$clone(this,Q);return e.Max.X-e.Min.X>>0;};Q.prototype.Dx=function(){return this.$val.Dx();};Q.ptr.prototype.Dy=function(){var $ptr,e;e=$clone(this,Q);return e.Max.Y-e.Min.Y>>0;};Q.prototype.Dy=function(){return this.$val.Dy();};Q.ptr.prototype.Size=function(){var $ptr,e;e=$clone(this,Q);return new O.ptr(e.Max.X-e.Min.X>>0,e.Max.Y-e.Min.Y>>0);};Q.prototype.Size=function(){return this.$val.Size();};Q.ptr.prototype.Add=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X+e.X>>0,f.Min.Y+e.Y>>0),new O.ptr(f.Max.X+e.X>>0,f.Max.Y+e.Y>>0));};Q.prototype.Add=function(e){return this.$val.Add(e);};Q.ptr.prototype.Sub=function(e){var $ptr,e,f;e=$clone(e,O);f=$clone(this,Q);return new Q.ptr(new O.ptr(f.Min.X-e.X>>0,f.Min.Y-e.Y>>0),new O.ptr(f.Max.X-e.X>>0,f.Max.Y-e.Y>>0));};Q.prototype.Sub=function(e){return this.$val.Sub(e);};Q.ptr.prototype.Inset=function(e){var $ptr,e,f,g,h;f=$clone(this,Q);if(f.Dx()<($imul(2,e))){f.Min.X=(g=((f.Min.X+f.Max.X>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));f.Max.X=f.Min.X;}else{f.Min.X=f.Min.X+(e)>>0;f.Max.X=f.Max.X-(e)>>0;}if(f.Dy()<($imul(2,e))){f.Min.Y=(h=((f.Min.Y+f.Max.Y>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));f.Max.Y=f.Min.Y;}else{f.Min.Y=f.Min.Y+(e)>>0;f.Max.Y=f.Max.Y-(e)>>0;}return f;};Q.prototype.Inset=function(e){return this.$val.Inset(e);};Q.ptr.prototype.Intersect=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Min.Xe.Max.X){f.Max.X=e.Max.X;}if(f.Max.Y>e.Max.Y){f.Max.Y=e.Max.Y;}if(f.Min.X>f.Max.X||f.Min.Y>f.Max.Y){return $pkg.ZR;}return f;};Q.prototype.Intersect=function(e){return this.$val.Intersect(e);};Q.ptr.prototype.Union=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);if(f.Empty()){return e;}if(e.Empty()){return f;}if(f.Min.X>e.Min.X){f.Min.X=e.Min.X;}if(f.Min.Y>e.Min.Y){f.Min.Y=e.Min.Y;}if(f.Max.X=e.Max.X||e.Min.Y>=e.Max.Y;};Q.prototype.Empty=function(){return this.$val.Empty();};Q.ptr.prototype.Eq=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return $equal(f,e,Q)||f.Empty()&&e.Empty();};Q.prototype.Eq=function(e){return this.$val.Eq(e);};Q.ptr.prototype.Overlaps=function(e){var $ptr,e,f;e=$clone(e,Q);f=$clone(this,Q);return!f.Empty()&&!e.Empty()&&f.Min.Xg){i=g;j=e;e=i;g=j;}if(f>h){k=h;l=f;f=k;h=l;}return new Q.ptr(new O.ptr(e,f),new O.ptr(g,h));};$pkg.Rect=R;V.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBAModel;};V.prototype.ColorModel=function(){return this.$val.ColorModel();};V.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};V.prototype.Bounds=function(){return this.$val.Bounds();};V.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBAAt(e,f),new h.constructor.elem(h));};V.prototype.At=function(e,f){return this.$val.At(e,f);};V.ptr.prototype.RGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};V.prototype.RGBAAt=function(e,f){return this.$val.RGBAAt(e,f);};V.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};V.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};V.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA),D.RGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};V.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};V.ptr.prototype.SetRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.RGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};V.prototype.SetRGBA=function(e,f,g){return this.$val.SetRGBA(e,f,g);};V.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new V.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new V.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};V.prototype.SubImage=function(e){return this.$val.SubImage(e);};V.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};V.prototype.Opaque=function(){return this.$val.Opaque();};W=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new V.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewRGBA=W;X.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.RGBA64Model;};X.prototype.ColorModel=function(){return this.$val.ColorModel();};X.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};X.prototype.Bounds=function(){return this.$val.Bounds();};X.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.RGBA64At(e,f),new h.constructor.elem(h));};X.prototype.At=function(e,f){return this.$val.At(e,f);};X.ptr.prototype.RGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.RGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.RGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};X.prototype.RGBA64At=function(e,f){return this.$val.RGBA64At(e,f);};X.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};X.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};X.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.RGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.RGBA64),D.RGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:X.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};X.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};X.ptr.prototype.SetRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.RGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};X.prototype.SetRGBA64=function(e,f,g){return this.$val.SetRGBA64(e,f,g);};X.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new X.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new X.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};X.prototype.SubImage=function(e){return this.$val.SubImage(e);};X.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};X.prototype.Opaque=function(){return this.$val.Opaque();};Y=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new X.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewRGBA64=Y;Z.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBAModel;};Z.prototype.ColorModel=function(){return this.$val.ColorModel();};Z.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};Z.prototype.Bounds=function(){return this.$val.Bounds();};Z.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBAAt(e,f),new h.constructor.elem(h));};Z.prototype.At=function(e,f){return this.$val.At(e,f);};Z.ptr.prototype.NRGBAAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};Z.prototype.NRGBAAt=function(e,f){return this.$val.NRGBAAt(e,f);};Z.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};Z.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};Z.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBAModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA),D.NRGBA);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.R));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.G));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.B));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Z.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};Z.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};Z.ptr.prototype.SetNRGBA=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.NRGBA);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.R));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.G));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.B));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.A));};Z.prototype.SetNRGBA=function(e,f,g){return this.$val.SetNRGBA(e,f,g);};Z.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new Z.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new Z.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};Z.prototype.SubImage=function(e){return this.$val.SubImage(e);};Z.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=3;g=$imul(e.Rect.Dx(),4);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(4)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};Z.prototype.Opaque=function(){return this.$val.Opaque();};AA=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new Z.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewNRGBA=AA;AB.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.NRGBA64Model;};AB.prototype.ColorModel=function(){return this.$val.ColorModel();};AB.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AB.prototype.Bounds=function(){return this.$val.Bounds();};AB.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.NRGBA64At(e,f),new h.constructor.elem(h));};AB.prototype.At=function(e,f){return this.$val.At(e,f);};AB.ptr.prototype.NRGBA64At=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.NRGBA64.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.NRGBA64.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0,((((m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n]))<<16>>>16)<<8<<16>>>16)|((o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]))<<16>>>16))>>>0,((((q=g.Pix,r=h+4>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]))<<16>>>16)<<8<<16>>>16)|((s=g.Pix,t=h+5>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))<<16>>>16))>>>0,((((u=g.Pix,v=h+6>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]))<<16>>>16)<<8<<16>>>16)|((w=g.Pix,x=h+7>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))<<16>>>16))>>>0);};AB.prototype.NRGBA64At=function(e,f){return this.$val.NRGBA64At(e,f);};AB.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),8))>>0;};AB.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AB.ptr.prototype.Set=function(e,f,g){var $ptr,aa,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.NRGBA64Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.NRGBA64),D.NRGBA64);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.R>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.R<<24>>>24)));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((k.G>>>8<<16>>>16)<<24>>>24)));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=(k.G<<24>>>24)));(t=h.Pix,u=i+4>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=((k.B>>>8<<16>>>16)<<24>>>24)));(v=h.Pix,w=i+5>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=(k.B<<24>>>24)));(x=h.Pix,y=i+6>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=((k.A>>>8<<16>>>16)<<24>>>24)));(z=h.Pix,aa=i+7>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB.ptr.prototype.Set};}$f.$ptr=$ptr;$f.aa=aa;$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;};AB.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AB.ptr.prototype.SetNRGBA64=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=$clone(g,D.NRGBA64);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.R>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.R<<24>>>24)));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=((g.G>>>8<<16>>>16)<<24>>>24)));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(g.G<<24>>>24)));(r=h.Pix,s=i+4>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=((g.B>>>8<<16>>>16)<<24>>>24)));(t=h.Pix,u=i+5>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=(g.B<<24>>>24)));(v=h.Pix,w=i+6>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=((g.A>>>8<<16>>>16)<<24>>>24)));(x=h.Pix,y=i+7>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(g.A<<24>>>24)));};AB.prototype.SetNRGBA64=function(e,f,g){return this.$val.SetNRGBA64(e,f,g);};AB.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AB.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AB.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AB.prototype.SubImage=function(e){return this.$val.SubImage(e);};AB.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=6;g=$imul(e.Rect.Dx(),8);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(8)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AB.prototype.Opaque=function(){return this.$val.Opaque();};AC=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(8,h)),i)));return new AB.ptr(j,$imul(8,h),$clone(e,Q));};$pkg.NewNRGBA64=AC;AD.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.AlphaModel;};AD.prototype.ColorModel=function(){return this.$val.ColorModel();};AD.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AD.prototype.Bounds=function(){return this.$val.Bounds();};AD.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.AlphaAt(e,f),new h.constructor.elem(h));};AD.prototype.At=function(e,f){return this.$val.At(e,f);};AD.ptr.prototype.AlphaAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AD.prototype.AlphaAt=function(e,f){return this.$val.AlphaAt(e,f);};AD.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AD.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AD.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.AlphaModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Alpha).A));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.Set};}$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;};AD.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AD.ptr.prototype.SetAlpha=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Alpha);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.A));};AD.prototype.SetAlpha=function(e,f,g){return this.$val.SetAlpha(e,f,g);};AD.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AD.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AD.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AD.prototype.SubImage=function(e){return this.$val.SubImage(e);};AD.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l;e=this;if(e.Rect.Empty()){return true;}f=0;g=e.Rect.Dx();h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+k]))===255))){return false;}k=k+(1)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AD.prototype.Opaque=function(){return this.$val.Opaque();};AF.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Alpha16Model;};AF.prototype.ColorModel=function(){return this.$val.ColorModel();};AF.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AF.prototype.Bounds=function(){return this.$val.Bounds();};AF.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Alpha16At(e,f),new h.constructor.elem(h));};AF.prototype.At=function(e,f){return this.$val.At(e,f);};AF.ptr.prototype.Alpha16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Alpha16.ptr(0);}h=g.PixOffset(e,f);return new D.Alpha16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AF.prototype.Alpha16At=function(e,f){return this.$val.Alpha16At(e,f);};AF.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AF.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AF.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Alpha16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Alpha16),D.Alpha16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.A>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.A<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AF.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AF.ptr.prototype.SetAlpha16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Alpha16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.A>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.A<<24>>>24)));};AF.prototype.SetAlpha16=function(e,f,g){return this.$val.SetAlpha16(e,f,g);};AF.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AF.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AF.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AF.prototype.SubImage=function(e){return this.$val.SubImage(e);};AF.ptr.prototype.Opaque=function(){var $ptr,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.Rect.Empty()){return true;}f=0;g=$imul(e.Rect.Dx(),2);h=f;i=g;j=e.Rect.Min.Y;while(true){if(!(j>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))===255))||!(((n=e.Pix,o=k+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))===255))){return false;}k=k+(2)>>0;}h=h+(e.Stride)>>0;i=i+(e.Stride)>>0;j=j+(1)>>0;}return true;};AF.prototype.Opaque=function(){return this.$val.Opaque();};AH.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.GrayModel;};AH.prototype.ColorModel=function(){return this.$val.ColorModel();};AH.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AH.prototype.Bounds=function(){return this.$val.Bounds();};AH.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.GrayAt(e,f),new h.constructor.elem(h));};AH.prototype.At=function(e,f){return this.$val.At(e,f);};AH.ptr.prototype.GrayAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray.ptr(0);}h=g.PixOffset(e,f);return new D.Gray.ptr((i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h])));};AH.prototype.GrayAt=function(e,f){return this.$val.GrayAt(e,f);};AH.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AH.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AH.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.GrayModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=$assertType(j,D.Gray).Y));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AH.ptr.prototype.Set};}$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;};AH.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AH.ptr.prototype.SetGray=function(e,f,g){var $ptr,e,f,g,h,i,j;g=$clone(g,D.Gray);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g.Y));};AH.prototype.SetGray=function(e,f,g){return this.$val.SetGray(e,f,g);};AH.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AH.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AH.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AH.prototype.SubImage=function(e){return this.$val.SubImage(e);};AH.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AH.prototype.Opaque=function(){return this.$val.Opaque();};AI=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(1,h)),i)));return new AH.ptr(j,$imul(1,h),$clone(e,Q));};$pkg.NewGray=AI;AJ.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.Gray16Model;};AJ.prototype.ColorModel=function(){return this.$val.ColorModel();};AJ.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AJ.prototype.Bounds=function(){return this.$val.Bounds();};AJ.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.Gray16At(e,f),new h.constructor.elem(h));};AJ.prototype.At=function(e,f){return this.$val.At(e,f);};AJ.ptr.prototype.Gray16At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.Gray16.ptr(0);}h=g.PixOffset(e,f);return new D.Gray16.ptr(((((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j]))<<16>>>16)<<8<<16>>>16)|((k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]))<<16>>>16))>>>0);};AJ.prototype.Gray16At=function(e,f){return this.$val.Gray16At(e,f);};AJ.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),2))>>0;};AJ.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AJ.ptr.prototype.Set=function(e,f,g){var $ptr,e,f,g,h,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;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;$r=$f.$r;}s:while(true){switch($s){case 0:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.Gray16Model.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.Gray16),D.Gray16);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=((k.Y>>>8<<16>>>16)<<24>>>24)));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=(k.Y<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AJ.ptr.prototype.SetGray16=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m;g=$clone(g,D.Gray16);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=((g.Y>>>8<<16>>>16)<<24>>>24)));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=(g.Y<<24>>>24)));};AJ.prototype.SetGray16=function(e,f,g){return this.$val.SetGray16(e,f,g);};AJ.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AJ.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AJ.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AJ.prototype.SubImage=function(e){return this.$val.SubImage(e);};AJ.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AJ.prototype.Opaque=function(){return this.$val.Opaque();};AK=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(2,h)),i)));return new AJ.ptr(j,$imul(2,h),$clone(e,Q));};$pkg.NewGray16=AK;AL.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.CMYKModel;};AL.prototype.ColorModel=function(){return this.$val.ColorModel();};AL.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AL.prototype.Bounds=function(){return this.$val.Bounds();};AL.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.CMYKAt(e,f),new h.constructor.elem(h));};AL.prototype.At=function(e,f){return this.$val.At(e,f);};AL.ptr.prototype.CMYKAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.CMYK.ptr(0,0,0,0);}h=g.PixOffset(e,f);return new D.CMYK.ptr((i=g.Pix,j=h+0>>0,((j<0||j>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+j])),(k=g.Pix,l=h+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l])),(m=g.Pix,n=h+2>>0,((n<0||n>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+n])),(o=g.Pix,p=h+3>>0,((p<0||p>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p])));};AL.prototype.CMYKAt=function(e,f){return this.$val.CMYKAt(e,f);};AL.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),4))>>0;};AL.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AL.ptr.prototype.Set=function(e,f,g){var $ptr,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;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:h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=D.CMYKModel.Convert(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone($assertType(j,D.CMYK),D.CMYK);(l=h.Pix,m=i+0>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=k.C));(n=h.Pix,o=i+1>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=k.M));(p=h.Pix,q=i+2>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=k.Y));(r=h.Pix,s=i+3>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k.K));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AL.ptr.prototype.Set};}$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.$s=$s;$f.$r=$r;return $f;};AL.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AL.ptr.prototype.SetCMYK=function(e,f,g){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q;g=$clone(g,D.CMYK);h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,k=i+0>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]=g.C));(l=h.Pix,m=i+1>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]=g.M));(n=h.Pix,o=i+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]=g.Y));(p=h.Pix,q=i+3>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=g.K));};AL.prototype.SetCMYK=function(e,f,g){return this.$val.SetCMYK(e,f,g);};AL.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AL.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.PixOffset(e.Min.X,e.Min.Y);return new AL.ptr($subslice(f.Pix,g),f.Stride,$clone(e,Q));};AL.prototype.SubImage=function(e){return this.$val.SubImage(e);};AL.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AL.prototype.Opaque=function(){return this.$val.Opaque();};AM=function(e){var $ptr,e,f,g,h,i,j;e=$clone(e,Q);f=e.Dx();g=e.Dy();h=f;i=g;j=$makeSlice(AV,($imul(($imul(4,h)),i)));return new AL.ptr(j,$imul(4,h),$clone(e,Q));};$pkg.NewCMYK=AM;AN.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e.Palette;};AN.prototype.ColorModel=function(){return this.$val.ColorModel();};AN.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AN.prototype.Bounds=function(){return this.$val.Bounds();};AN.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(g.Palette.$length===0){return $ifaceNil;}if(!(new O.ptr(e,f).In(g.Rect))){return(h=g.Palette,(0>=h.$length?$throwRuntimeError("index out of range"):h.$array[h.$offset+0]));}i=g.PixOffset(e,f);return(j=g.Palette,k=(l=g.Pix,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])),((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]));};AN.prototype.At=function(e,f){return this.$val.At(e,f);};AN.ptr.prototype.PixOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.Stride))+($imul(((e-g.Rect.Min.X>>0)),1))>>0;};AN.prototype.PixOffset=function(e,f){return this.$val.PixOffset(e,f);};AN.ptr.prototype.Set=function(e,f,g){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=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);j=h.Palette.Index(g);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}(k=h.Pix,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i]=(j<<24>>>24)));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Set};}$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;};AN.prototype.Set=function(e,f,g){return this.$val.Set(e,f,g);};AN.ptr.prototype.ColorIndexAt=function(e,f){var $ptr,e,f,g,h,i;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return 0;}h=g.PixOffset(e,f);return(i=g.Pix,((h<0||h>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+h]));};AN.prototype.ColorIndexAt=function(e,f){return this.$val.ColorIndexAt(e,f);};AN.ptr.prototype.SetColorIndex=function(e,f,g){var $ptr,e,f,g,h,i,j;h=this;if(!(new O.ptr(e,f).In(h.Rect))){return;}i=h.PixOffset(e,f);(j=h.Pix,((i<0||i>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i]=g));};AN.prototype.SetColorIndex=function(e,f,g){return this.$val.SetColorIndex(e,f,g);};AN.ptr.prototype.SubImage=function(e){var $ptr,e,f,g;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AN.ptr(AV.nil,0,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)),f.Palette);}g=f.PixOffset(e.Min.X,e.Min.Y);return new AN.ptr($subslice(f.Pix,g),f.Stride,$clone(f.Rect.Intersect(e),Q),f.Palette);};AN.prototype.SubImage=function(e){return this.$val.SubImage(e);};AN.ptr.prototype.Opaque=function(){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:e=this;f=AW.zero();g=0;h=e.Rect.Dx();i=g;j=h;k=e.Rect.Min.Y;while(true){if(!(k=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]);((n<0||n>=f.length)?$throwRuntimeError("index out of range"):f[n]=true);m++;}i=i+(e.Stride)>>0;j=j+(e.Stride)>>0;k=k+(1)>>0;}o=e.Palette;p=0;case 1:if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]);if(!((q<0||q>=f.length)?$throwRuntimeError("index out of range"):f[q])){$s=3;continue;}$s=4;continue;case 3:p++;$s=1;continue;case 4:t=r.RGBA();$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[3];if(!((u===65535))){return false;}p++;$s=1;continue;case 2:return true;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Opaque};}$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;};AN.prototype.Opaque=function(){return this.$val.Opaque();};AO=function(e,f){var $ptr,e,f,g,h,i,j,k;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=g;j=h;k=$makeSlice(AV,($imul(($imul(1,i)),j)));return new AN.ptr(k,$imul(1,i),$clone(e,Q),f);};$pkg.NewPaletted=AO;AP.ptr.prototype.RGBA=function(){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:e=0;f=0;g=0;h=0;i=this;k=i.C.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];g=j[2];h=j[3];$s=2;case 2:return[e,f,g,h];}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.RGBA};}$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;};AP.prototype.RGBA=function(){return this.$val.RGBA();};AP.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return e;};AP.prototype.ColorModel=function(){return this.$val.ColorModel();};AP.ptr.prototype.Convert=function(e){var $ptr,e,f;f=this;return f.C;};AP.prototype.Convert=function(e){return this.$val.Convert(e);};AP.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return new Q.ptr(new O.ptr(-1000000000,-1000000000),new O.ptr(1000000000,1000000000));};AP.prototype.Bounds=function(){return this.$val.Bounds();};AP.ptr.prototype.At=function(e,f){var $ptr,e,f,g;g=this;return g.C;};AP.prototype.At=function(e,f){return this.$val.At(e,f);};AP.ptr.prototype.Opaque=function(){var $ptr,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;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=this;g=e.C.RGBA();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[3];return h===65535;}return;}if($f===undefined){$f={$blk:AP.ptr.prototype.Opaque};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};AP.prototype.Opaque=function(){return this.$val.Opaque();};AQ=function(e){var $ptr,e;return new AP.ptr(e);};$pkg.NewUniform=AQ;AR.prototype.String=function(){var $ptr,e,f;e=this.$val;f=e;if(f===0){return"YCbCrSubsampleRatio444";}else if(f===1){return"YCbCrSubsampleRatio422";}else if(f===2){return"YCbCrSubsampleRatio420";}else if(f===3){return"YCbCrSubsampleRatio440";}else if(f===4){return"YCbCrSubsampleRatio411";}else if(f===5){return"YCbCrSubsampleRatio410";}return"YCbCrSubsampleRatioUnknown";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.ptr.prototype.ColorModel=function(){var $ptr,e;e=this;return D.YCbCrModel;};AS.prototype.ColorModel=function(){return this.$val.ColorModel();};AS.ptr.prototype.Bounds=function(){var $ptr,e;e=this;return e.Rect;};AS.prototype.Bounds=function(){return this.$val.Bounds();};AS.ptr.prototype.At=function(e,f){var $ptr,e,f,g,h;g=this;return(h=g.YCbCrAt(e,f),new h.constructor.elem(h));};AS.prototype.At=function(e,f){return this.$val.At(e,f);};AS.ptr.prototype.YCbCrAt=function(e,f){var $ptr,e,f,g,h,i,j,k,l;g=this;if(!(new O.ptr(e,f).In(g.Rect))){return new D.YCbCr.ptr(0,0,0);}h=g.YOffset(e,f);i=g.COffset(e,f);return new D.YCbCr.ptr((j=g.Y,((h<0||h>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+h])),(k=g.Cb,((i<0||i>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+i])),(l=g.Cr,((i<0||i>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+i])));};AS.prototype.YCbCrAt=function(e,f){return this.$val.YCbCrAt(e,f);};AS.ptr.prototype.YOffset=function(e,f){var $ptr,e,f,g;g=this;return($imul(((f-g.Rect.Min.Y>>0)),g.YStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.YOffset=function(e,f){return this.$val.YOffset(e,f);};AS.ptr.prototype.COffset=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;h=g.SubsampleRatio;if(h===1){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((i=e/2,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"))-(j=g.Rect.Min.X/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===2){return($imul((((k=f/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-(l=g.Rect.Min.Y/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((m=e/2,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))-(n=g.Rect.Min.X/2,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===3){return($imul((((o=f/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))-(p=g.Rect.Min.Y/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;}else if(h===4){return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+(((q=e/4,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))-(r=g.Rect.Min.X/4,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}else if(h===5){return($imul((((s=f/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))-(t=g.Rect.Min.Y/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0)),g.CStride))+(((u=e/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))-(v=g.Rect.Min.X/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))>>0;}return($imul(((f-g.Rect.Min.Y>>0)),g.CStride))+((e-g.Rect.Min.X>>0))>>0;};AS.prototype.COffset=function(e,f){return this.$val.COffset(e,f);};AS.ptr.prototype.SubImage=function(e){var $ptr,e,f,g,h;e=$clone(e,Q);f=this;Q.copy(e,e.Intersect(f.Rect));if(e.Empty()){return new AS.ptr(AV.nil,AV.nil,AV.nil,0,0,f.SubsampleRatio,new Q.ptr(new O.ptr(0,0),new O.ptr(0,0)));}g=f.YOffset(e.Min.X,e.Min.Y);h=f.COffset(e.Min.X,e.Min.Y);return new AS.ptr($subslice(f.Y,g),$subslice(f.Cb,h),$subslice(f.Cr,h),f.YStride,f.CStride,f.SubsampleRatio,$clone(e,Q));};AS.prototype.SubImage=function(e){return this.$val.SubImage(e);};AS.ptr.prototype.Opaque=function(){var $ptr,e;e=this;return true;};AS.prototype.Opaque=function(){return this.$val.Opaque();};AT=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,Q);g=e.Dx();h=e.Dy();i=0;j=0;k=g;l=h;m=i;n=j;o=f;if(o===1){m=(p=((e.Max.X+1>>0))/2,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"))-(q=e.Min.X/2,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===2){m=(r=((e.Max.X+1>>0))/2,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))-(s=e.Min.X/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(t=((e.Max.Y+1>>0))/2,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))-(u=e.Min.Y/2,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===3){m=k;n=(v=((e.Max.Y+1>>0))/2,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))-(w=e.Min.Y/2,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))>>0;}else if(o===4){m=(x=((e.Max.X+3>>0))/4,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))-(y=e.Min.X/4,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;n=l;}else if(o===5){m=(z=((e.Max.X+3>>0))/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))-(aa=e.Min.X/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0;n=(ab=((e.Max.Y+1>>0))/2,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero"))-(ac=e.Min.Y/2,(ac===ac&&ac!==1/0&&ac!==-1/0)?ac>>0:$throwRuntimeError("integer divide by zero"))>>0;}else{m=k;n=l;}ad=($imul(k,l))+($imul(($imul(0,m)),n))>>0;ae=($imul(k,l))+($imul(($imul(1,m)),n))>>0;af=($imul(k,l))+($imul(($imul(2,m)),n))>>0;ag=$makeSlice(AV,af);return new AS.ptr($subslice(ag,0,ad,ad),$subslice(ag,ad,ae,ae),$subslice(ag,ae,af,af),k,m,f,$clone(e,Q));};$pkg.NewYCbCr=AT;O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[O],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[O],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([Q],[O],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([O],[$Bool],false)}];Q.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Dx",name:"Dx",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Dy",name:"Dy",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[O],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([O],[Q],false)},{prop:"Inset",name:"Inset",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Intersect",name:"Intersect",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Union",name:"Union",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"Empty",name:"Empty",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Eq",name:"Eq",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Overlaps",name:"Overlaps",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Canon",name:"Canon",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}];AZ.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBAAt",name:"RGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA",name:"SetRGBA",pkg:"",typ:$funcType([$Int,$Int,D.RGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BA.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"RGBA64At",name:"RGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.RGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetRGBA64",name:"SetRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.RGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BB.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBAAt",name:"NRGBAAt",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA",name:"SetNRGBA",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BC.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"NRGBA64At",name:"NRGBA64At",pkg:"",typ:$funcType([$Int,$Int],[D.NRGBA64],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetNRGBA64",name:"SetNRGBA64",pkg:"",typ:$funcType([$Int,$Int,D.NRGBA64],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BD.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"AlphaAt",name:"AlphaAt",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha",name:"SetAlpha",pkg:"",typ:$funcType([$Int,$Int,D.Alpha],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BE.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Alpha16At",name:"Alpha16At",pkg:"",typ:$funcType([$Int,$Int],[D.Alpha16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetAlpha16",name:"SetAlpha16",pkg:"",typ:$funcType([$Int,$Int,D.Alpha16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BF.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"GrayAt",name:"GrayAt",pkg:"",typ:$funcType([$Int,$Int],[D.Gray],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray",name:"SetGray",pkg:"",typ:$funcType([$Int,$Int,D.Gray],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BG.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Gray16At",name:"Gray16At",pkg:"",typ:$funcType([$Int,$Int],[D.Gray16],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetGray16",name:"SetGray16",pkg:"",typ:$funcType([$Int,$Int,D.Gray16],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BH.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"CMYKAt",name:"CMYKAt",pkg:"",typ:$funcType([$Int,$Int],[D.CMYK],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"SetCMYK",name:"SetCMYK",pkg:"",typ:$funcType([$Int,$Int,D.CMYK],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BI.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"PixOffset",name:"PixOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$Int,$Int,D.Color],[],false)},{prop:"ColorIndexAt",name:"ColorIndexAt",pkg:"",typ:$funcType([$Int,$Int],[$Uint8],false)},{prop:"SetColorIndex",name:"SetColorIndex",pkg:"",typ:$funcType([$Int,$Int,$Uint8],[],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];BJ.methods=[{prop:"RGBA",name:"RGBA",pkg:"",typ:$funcType([],[$Uint32,$Uint32,$Uint32,$Uint32],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([D.Color],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BK.methods=[{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"YCbCrAt",name:"YCbCrAt",pkg:"",typ:$funcType([$Int,$Int],[D.YCbCr],false)},{prop:"YOffset",name:"YOffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"COffset",name:"COffset",pkg:"",typ:$funcType([$Int,$Int],[$Int],false)},{prop:"SubImage",name:"SubImage",pkg:"",typ:$funcType([Q],[T],false)},{prop:"Opaque",name:"Opaque",pkg:"",typ:$funcType([],[$Bool],false)}];F.init([{prop:"name",name:"name",pkg:"image",typ:$String,tag:""},{prop:"magic",name:"magic",pkg:"image",typ:$String,tag:""},{prop:"decode",name:"decode",pkg:"image",typ:AX,tag:""},{prop:"decodeConfig",name:"decodeConfig",pkg:"image",typ:AY,tag:""}]);I.init([{prop:"Peek",name:"Peek",pkg:"",typ:$funcType([$Int],[AV,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)}]);O.init([{prop:"X",name:"X",pkg:"",typ:$Int,tag:""},{prop:"Y",name:"Y",pkg:"",typ:$Int,tag:""}]);Q.init([{prop:"Min",name:"Min",pkg:"",typ:O,tag:""},{prop:"Max",name:"Max",pkg:"",typ:O,tag:""}]);S.init([{prop:"ColorModel",name:"ColorModel",pkg:"",typ:D.Model,tag:""},{prop:"Width",name:"Width",pkg:"",typ:$Int,tag:""},{prop:"Height",name:"Height",pkg:"",typ:$Int,tag:""}]);T.init([{prop:"At",name:"At",pkg:"",typ:$funcType([$Int,$Int],[D.Color],false)},{prop:"Bounds",name:"Bounds",pkg:"",typ:$funcType([],[Q],false)},{prop:"ColorModel",name:"ColorModel",pkg:"",typ:$funcType([],[D.Model],false)}]);V.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);X.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);Z.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AB.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AD.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AF.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AH.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AJ.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AL.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""}]);AN.init([{prop:"Pix",name:"Pix",pkg:"",typ:AV,tag:""},{prop:"Stride",name:"Stride",pkg:"",typ:$Int,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,tag:""},{prop:"Palette",name:"Palette",pkg:"",typ:D.Palette,tag:""}]);AP.init([{prop:"C",name:"C",pkg:"",typ:D.Color,tag:""}]);AS.init([{prop:"Y",name:"Y",pkg:"",typ:AV,tag:""},{prop:"Cb",name:"Cb",pkg:"",typ:AV,tag:""},{prop:"Cr",name:"Cr",pkg:"",typ:AV,tag:""},{prop:"YStride",name:"YStride",pkg:"",typ:$Int,tag:""},{prop:"CStride",name:"CStride",pkg:"",typ:$Int,tag:""},{prop:"SubsampleRatio",name:"SubsampleRatio",pkg:"",typ:AR,tag:""},{prop:"Rect",name:"Rect",pkg:"",typ:Q,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=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;}G=AU.nil;$pkg.ZP=new O.ptr(0,0);$pkg.ZR=new Q.ptr(new O.ptr(0,0),new O.ptr(0,0));$pkg.ErrFormat=B.New("image: unknown format");$pkg.Black=AQ((a=D.Black,new a.constructor.elem(a)));$pkg.White=AQ((b=D.White,new b.constructor.elem(b)));$pkg.Transparent=AQ((c=D.Transparent,new c.constructor.elem(c)));$pkg.Opaque=AQ((d=D.Opaque,new d.constructor.elem(d)));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/internal/imageutil"]=(function(){var $pkg={},$init,A,B;A=$packages["image"];B=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,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,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=false;d=$clone(d,A.Point);b=$clone(b,A.Rectangle);f=$imul(((b.Min.X-a.Rect.Min.X>>0)),4);g=$imul(((b.Max.X-a.Rect.Min.X>>0)),4);h=b.Min.Y-a.Rect.Min.Y>>0;i=b.Max.Y-a.Rect.Min.Y>>0;j=c.SubsampleRatio;if(j===0){k=h;l=d.Y;m=k;n=l;while(true){if(!(!((m===i)))){break;}o=$subslice(a.Pix,($imul(m,a.Stride)));p=($imul(((n-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;q=($imul(((n-c.Rect.Min.Y>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;r=f;while(true){if(!(!((r===g)))){break;}t=$imul(((s=c.Y,((p<0||p>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+p]))>>0),65792);v=((u=c.Cb,((q<0||q>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+q]))>>0)-128>>0;x=((w=c.Cr,((q<0||q>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+q]))>>0)-128>>0;y=((t+($imul(91881,x))>>0))>>16>>0;z=(((t-($imul(22554,v))>>0)-($imul(46802,x))>>0))>>16>>0;aa=((t+($imul(116130,v))>>0))>>16>>0;if(y<0){y=0;}else if(y>255){y=255;}if(z<0){z=0;}else if(z>255){z=255;}if(aa<0){aa=0;}else if(aa>255){aa=255;}(ab=r+0>>0,((ab<0||ab>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ab]=(y<<24>>>24)));(ac=r+1>>0,((ac<0||ac>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ac]=(z<<24>>>24)));(ad=r+2>>0,((ad<0||ad>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ad]=(aa<<24>>>24)));(ae=r+3>>0,((ae<0||ae>=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+ae]=255));af=r+4>>0;ag=p+1>>0;ah=q+1>>0;r=af;p=ag;q=ah;}ai=m+1>>0;aj=n+1>>0;m=ai;n=aj;}}else if(j===1){ak=h;al=d.Y;am=ak;an=al;while(true){if(!(!((am===i)))){break;}ao=$subslice(a.Pix,($imul(am,a.Stride)));ap=($imul(((an-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;ar=($imul(((an-c.Rect.Min.Y>>0)),c.CStride))-(aq=c.Rect.Min.X/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>0:$throwRuntimeError("integer divide by zero"))>>0;as=f;at=d.X;au=as;av=at;while(true){if(!(!((au===g)))){break;}ax=ar+(aw=av/2,(aw===aw&&aw!==1/0&&aw!==-1/0)?aw>>0:$throwRuntimeError("integer divide by zero"))>>0;az=$imul(((ay=c.Y,((ap<0||ap>=ay.$length)?$throwRuntimeError("index out of range"):ay.$array[ay.$offset+ap]))>>0),65792);bb=((ba=c.Cb,((ax<0||ax>=ba.$length)?$throwRuntimeError("index out of range"):ba.$array[ba.$offset+ax]))>>0)-128>>0;bd=((bc=c.Cr,((ax<0||ax>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+ax]))>>0)-128>>0;be=((az+($imul(91881,bd))>>0))>>16>>0;bf=(((az-($imul(22554,bb))>>0)-($imul(46802,bd))>>0))>>16>>0;bg=((az+($imul(116130,bb))>>0))>>16>>0;if(be<0){be=0;}else if(be>255){be=255;}if(bf<0){bf=0;}else if(bf>255){bf=255;}if(bg<0){bg=0;}else if(bg>255){bg=255;}(bh=au+0>>0,((bh<0||bh>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bh]=(be<<24>>>24)));(bi=au+1>>0,((bi<0||bi>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bi]=(bf<<24>>>24)));(bj=au+2>>0,((bj<0||bj>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bj]=(bg<<24>>>24)));(bk=au+3>>0,((bk<0||bk>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+bk]=255));bl=au+4>>0;bm=av+1>>0;bn=ap+1>>0;au=bl;av=bm;ap=bn;}bo=am+1>>0;bp=an+1>>0;am=bo;an=bp;}}else if(j===2){bq=h;br=d.Y;bs=bq;bt=br;while(true){if(!(!((bs===i)))){break;}bu=$subslice(a.Pix,($imul(bs,a.Stride)));bv=($imul(((bt-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;bz=($imul((((bw=bt/2,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>0:$throwRuntimeError("integer divide by zero"))-(bx=c.Rect.Min.Y/2,(bx===bx&&bx!==1/0&&bx!==-1/0)?bx>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))-(by=c.Rect.Min.X/2,(by===by&&by!==1/0&&by!==-1/0)?by>>0:$throwRuntimeError("integer divide by zero"))>>0;ca=f;cb=d.X;cc=ca;cd=cb;while(true){if(!(!((cc===g)))){break;}cf=bz+(ce=cd/2,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"))>>0;ch=$imul(((cg=c.Y,((bv<0||bv>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+bv]))>>0),65792);cj=((ci=c.Cb,((cf<0||cf>=ci.$length)?$throwRuntimeError("index out of range"):ci.$array[ci.$offset+cf]))>>0)-128>>0;cl=((ck=c.Cr,((cf<0||cf>=ck.$length)?$throwRuntimeError("index out of range"):ck.$array[ck.$offset+cf]))>>0)-128>>0;cm=((ch+($imul(91881,cl))>>0))>>16>>0;cn=(((ch-($imul(22554,cj))>>0)-($imul(46802,cl))>>0))>>16>>0;co=((ch+($imul(116130,cj))>>0))>>16>>0;if(cm<0){cm=0;}else if(cm>255){cm=255;}if(cn<0){cn=0;}else if(cn>255){cn=255;}if(co<0){co=0;}else if(co>255){co=255;}(cp=cc+0>>0,((cp<0||cp>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cp]=(cm<<24>>>24)));(cq=cc+1>>0,((cq<0||cq>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cq]=(cn<<24>>>24)));(cr=cc+2>>0,((cr<0||cr>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cr]=(co<<24>>>24)));(cs=cc+3>>0,((cs<0||cs>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cs]=255));ct=cc+4>>0;cu=cd+1>>0;cv=bv+1>>0;cc=ct;cd=cu;bv=cv;}cw=bs+1>>0;cx=bt+1>>0;bs=cw;bt=cx;}}else if(j===3){cy=h;cz=d.Y;da=cy;db=cz;while(true){if(!(!((da===i)))){break;}dc=$subslice(a.Pix,($imul(da,a.Stride)));dd=($imul(((db-c.Rect.Min.Y>>0)),c.YStride))+((d.X-c.Rect.Min.X>>0))>>0;dg=($imul((((de=db/2,(de===de&&de!==1/0&&de!==-1/0)?de>>0:$throwRuntimeError("integer divide by zero"))-(df=c.Rect.Min.Y/2,(df===df&&df!==1/0&&df!==-1/0)?df>>0:$throwRuntimeError("integer divide by zero"))>>0)),c.CStride))+((d.X-c.Rect.Min.X>>0))>>0;dh=f;while(true){if(!(!((dh===g)))){break;}dj=$imul(((di=c.Y,((dd<0||dd>=di.$length)?$throwRuntimeError("index out of range"):di.$array[di.$offset+dd]))>>0),65792);dl=((dk=c.Cb,((dg<0||dg>=dk.$length)?$throwRuntimeError("index out of range"):dk.$array[dk.$offset+dg]))>>0)-128>>0;dn=((dm=c.Cr,((dg<0||dg>=dm.$length)?$throwRuntimeError("index out of range"):dm.$array[dm.$offset+dg]))>>0)-128>>0;dp=((dj+($imul(91881,dn))>>0))>>16>>0;dq=(((dj-($imul(22554,dl))>>0)-($imul(46802,dn))>>0))>>16>>0;dr=((dj+($imul(116130,dl))>>0))>>16>>0;if(dp<0){dp=0;}else if(dp>255){dp=255;}if(dq<0){dq=0;}else if(dq>255){dq=255;}if(dr<0){dr=0;}else if(dr>255){dr=255;}(ds=dh+0>>0,((ds<0||ds>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+ds]=(dp<<24>>>24)));(dt=dh+1>>0,((dt<0||dt>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dt]=(dq<<24>>>24)));(du=dh+2>>0,((du<0||du>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+du]=(dr<<24>>>24)));(dv=dh+3>>0,((dv<0||dv>=dc.$length)?$throwRuntimeError("index out of range"):dc.$array[dc.$offset+dv]=255));dw=dh+4>>0;dx=dd+1>>0;dy=dg+1>>0;dh=dw;dd=dx;dg=dy;}dz=da+1>>0;ea=db+1>>0;da=dz;db=ea;}}else{e=false;return e;}e=true;return e;};$pkg.DrawYCbCr=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:$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["image/draw"]=(function(){var $pkg={},$init,A,B,C,Z,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;A=$packages["image"];B=$packages["image/color"];C=$packages["image/internal/imageutil"];Z=$ptrType(A.Point);AA=$ptrType(A.RGBA);AB=$ptrType(A.Paletted);AC=$ptrType(A.Uniform);AD=$ptrType(A.NRGBA);AE=$ptrType(A.YCbCr);AF=$ptrType(A.Gray);AG=$ptrType(A.CMYK);AH=$ptrType(A.Alpha);AI=$arrayType($Int32,4);AJ=$sliceType(AI);AK=$sliceType($Uint8);I=function(b,c,d,e,f,g){var $ptr,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;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:h=$clone(c.Min,A.Point);i=b.Bounds();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=c.Intersect(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}A.Rectangle.copy(c,j);k=d.Bounds();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k.Add(h.Sub(e));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=c.Intersect(l);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}A.Rectangle.copy(c,m);if(!($interfaceIsEqual(f,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:n=f.Bounds();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n.Add(h.Sub(g));$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=c.Intersect(o);$s=10;case 10:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}A.Rectangle.copy(c,p);case 7:q=c.Min.X-h.X>>0;r=c.Min.Y-h.Y>>0;if((q===0)&&(r===0)){return;}e.X=e.X+(q)>>0;e.Y=e.Y+(r)>>0;if(!(g===Z.nil)){g.X=g.X+(q)>>0;g.Y=g.Y+(r)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$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;};J=function(b,c,d,e){var $ptr,b,c,d,e;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);return $interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))&&(e.Y>0;as=ai-1>>0;at=-1;ai=ar;aj=as;ak=at;au=ap-1>>0;av=ao-1>>0;aw=-1;ao=au;ap=av;aq=aw;}i[0]=new B.RGBA64.ptr(0,0,0,0);ax=(e[0].Y+ao>>0)-c[0].Min.Y>>0;ay=(g[0].Y+ao>>0)-c[0].Min.Y>>0;az=ao;case 38:if(!(!((az===ap)))){$s=39;continue;}ba=(e[0].X+ai>>0)-c[0].Min.X>>0;bb=(g[0].X+ai>>0)-c[0].Min.X>>0;bc=ai;case 40:if(!(!((bc===aj)))){$s=41;continue;}bd=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=42;continue;}$s=43;continue;case 42:bf=f.At(bb,ay);$s=44;case 44:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.RGBA();$s=45;case 45:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}be=bg;bd=be[3];case 43:if(bd===0){$s=46;continue;}if((bd===65535)&&(h===1)){$s=47;continue;}$s=48;continue;case 46:if(h===0){$s=50;continue;}$s=51;continue;case 50:$s=52;continue;case 51:$r=b.Set(bc,az,(bh=B.Transparent,new bh.constructor.elem(bh)));$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 52:$s=49;continue;case 47:bi=bc;bj=az;bk=d.At(ba,ax);$s=54;case 54:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;$r=b.Set(bi,bj,bl);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=49;continue;case 48:bn=d.At(ba,ax);$s=56;case 56:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn.RGBA();$s=57;case 57:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bm=bo;bp=bm[0];bq=bm[1];br=bm[2];bs=bm[3];if(h===0){$s=58;continue;}$s=59;continue;case 58:bu=b.At(bc,az);$s=61;case 61:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu.RGBA();$s=62;case 62:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bt=bv;bw=bt[0];bx=bt[1];by=bt[2];bz=bt[3];cb=65535-((ca=($imul(bs,bd)>>>0)/65535,(ca===ca&&ca!==1/0&&ca!==-1/0)?ca>>>0:$throwRuntimeError("integer divide by zero")))>>>0;i[0].R=((cc=((($imul(bw,cb)>>>0)+($imul(bp,bd)>>>0)>>>0))/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((cd=((($imul(bx,cb)>>>0)+($imul(bq,bd)>>>0)>>>0))/65535,(cd===cd&&cd!==1/0&&cd!==-1/0)?cd>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ce=((($imul(by,cb)>>>0)+($imul(br,bd)>>>0)>>>0))/65535,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cf=((($imul(bz,cb)>>>0)+($imul(bs,bd)>>>0)>>>0))/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);$s=60;continue;case 59:i[0].R=((cg=($imul(bp,bd)>>>0)/65535,(cg===cg&&cg!==1/0&&cg!==-1/0)?cg>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].G=((ch=($imul(bq,bd)>>>0)/65535,(ch===ch&&ch!==1/0&&ch!==-1/0)?ch>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].B=((ci=($imul(br,bd)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);i[0].A=((cj=($imul(bs,bd)>>>0)/65535,(cj===cj&&cj!==1/0&&cj!==-1/0)?cj>>>0:$throwRuntimeError("integer divide by zero"))<<16>>>16);case 60:$r=b.Set(bc,az,i[0]);$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 49:ck=bc+ak>>0;cl=ba+ak>>0;cm=bb+ak>>0;bc=ck;ba=cl;bb=cm;$s=40;continue;case 41:cn=az+aq>>0;co=ax+aq>>0;cp=ay+aq>>0;az=cn;ax=co;ay=cp;$s=38;continue;case 39:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:L};}$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.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.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.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.DrawMask=L;M=function(b,c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,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;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;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=$imul(((65535-j>>>0)),257)>>>0;l=b.PixOffset(c.Min.X,c.Min.Y);m=l+($imul(c.Dx(),4))>>0;n=c.Min.Y;while(true){if(!(!((n===c.Max.Y)))){break;}o=l;while(true){if(!(o>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]))>>>0);u=((s=b.Pix,t=o+1>>0,((t<0||t>=s.$length)?$throwRuntimeError("index out of range"):s.$array[s.$offset+t]))>>>0);x=((v=b.Pix,w=o+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]))>>>0);aa=((y=b.Pix,z=o+3>>0,((z<0||z>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+z]))>>>0);(ac=b.Pix,ad=o+0>>0,((ad<0||ad>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ad]=(((((ab=($imul(r,k)>>>0)/65535,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"))+g>>>0))>>>8>>>0)<<24>>>24)));(af=b.Pix,ag=o+1>>0,((ag<0||ag>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ag]=(((((ae=($imul(u,k)>>>0)/65535,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"))+h>>>0))>>>8>>>0)<<24>>>24)));(ai=b.Pix,aj=o+2>>0,((aj<0||aj>=ai.$length)?$throwRuntimeError("index out of range"):ai.$array[ai.$offset+aj]=(((((ah=($imul(x,k)>>>0)/65535,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>>0:$throwRuntimeError("integer divide by zero"))+i>>>0))>>>8>>>0)<<24>>>24)));(al=b.Pix,am=o+3>>0,((am<0||am>=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]=(((((ak=($imul(aa,k)>>>0)/65535,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>>0:$throwRuntimeError("integer divide by zero"))+j>>>0))>>>8>>>0)<<24>>>24)));o=o+(4)>>0;}l=l+(b.Stride)>>0;m=m+(b.Stride)>>0;n=n+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:M};}$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.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=function(b,c,d){var $ptr,aa,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;aa=$f.aa;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=$clone(c,A.Rectangle);f=d.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=((g>>>8>>>0)<<24>>>24);l=((h>>>8>>>0)<<24>>>24);m=((i>>>8>>>0)<<24>>>24);n=((j>>>8>>>0)<<24>>>24);o=b.PixOffset(c.Min.X,c.Min.Y);p=o+($imul(c.Dx(),4))>>0;q=o;while(true){if(!(q>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]=k));(t=b.Pix,u=q+1>>0,((u<0||u>=t.$length)?$throwRuntimeError("index out of range"):t.$array[t.$offset+u]=l));(v=b.Pix,w=q+2>>0,((w<0||w>=v.$length)?$throwRuntimeError("index out of range"):v.$array[v.$offset+w]=m));(x=b.Pix,y=q+3>>0,((y<0||y>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=n));q=q+(4)>>0;}z=$subslice(b.Pix,o,p);aa=c.Min.Y+1>>0;while(true){if(!(aa>0;p=p+(b.Stride)>>0;$copySlice($subslice(b.Pix,o,p),z);aa=aa+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.aa=aa;$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=function(b,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,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=c.Dx();g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;p=0;q=0;r=0;s=p;t=q;u=r;if(c.Min.Y>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;y=$imul(((h-1>>0)),4);z=-4;aa=-4;s=y;t=z;u=aa;}while(true){if(!(i>0)){break;}ab=$subslice(b.Pix,j);ac=$subslice(d.Pix,k);ad=s;while(true){if(!(!((ad===t)))){break;}af=$imul(((ae=ad+0>>0,((ae<0||ae>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ae]))>>>0),257)>>>0;ah=$imul(((ag=ad+1>>0,((ag<0||ag>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ag]))>>>0),257)>>>0;aj=$imul(((ai=ad+2>>0,((ai<0||ai>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ai]))>>>0),257)>>>0;al=$imul(((ak=ad+3>>0,((ak<0||ak>=ac.$length)?$throwRuntimeError("index out of range"):ac.$array[ac.$offset+ak]))>>>0),257)>>>0;an=((am=ad+0>>0,((am<0||am>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+am]))>>>0);ap=((ao=ad+1>>0,((ao<0||ao>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ao]))>>>0);ar=((aq=ad+2>>0,((aq<0||aq>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aq]))>>>0);at=((as=ad+3>>0,((as<0||as>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+as]))>>>0);au=$imul(((65535-al>>>0)),257)>>>0;(aw=ad+0>>0,((aw<0||aw>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+aw]=(((((av=($imul(an,au)>>>0)/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))+af>>>0))>>>8>>>0)<<24>>>24)));(ay=ad+1>>0,((ay<0||ay>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ay]=(((((ax=($imul(ap,au)>>>0)/65535,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>>0:$throwRuntimeError("integer divide by zero"))+ah>>>0))>>>8>>>0)<<24>>>24)));(ba=ad+2>>0,((ba<0||ba>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ba]=(((((az=($imul(ar,au)>>>0)/65535,(az===az&&az!==1/0&&az!==-1/0)?az>>>0:$throwRuntimeError("integer divide by zero"))+aj>>>0))>>>8>>>0)<<24>>>24)));(bc=ad+3>>0,((bc<0||bc>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+bc]=(((((bb=($imul(at,au)>>>0)/65535,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>>0:$throwRuntimeError("integer divide by zero"))+al>>>0))>>>8>>>0)<<24>>>24)));ad=ad+(u)>>0;}j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};P=function(b,c,d,e){var $ptr,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(4,c.Dx());g=c.Dy();h=f;i=g;j=b.PixOffset(c.Min.X,c.Min.Y);k=d.PixOffset(e.X,e.Y);l=0;m=0;n=l;o=m;if(c.Min.Y<=e.Y){n=b.Stride;o=d.Stride;}else{j=j+(($imul(((i-1>>0)),b.Stride)))>>0;k=k+(($imul(((i-1>>0)),d.Stride)))>>0;n=-b.Stride;o=-d.Stride;}while(true){if(!(i>0)){break;}$copySlice($subslice(b.Pix,j,(j+h>>0)),$subslice(d.Pix,k,(k+h>>0)));j=j+(n)>>0;k=k+(o)>>0;i=i-(1)>>0;}};Q=function(b,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,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));ad=((ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]))>>>0);af=((ae=p+1>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]))>>>0);ah=((ag=p+2>>0,((ag<0||ag>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ag]))>>>0);aj=((ai=p+3>>0,((ai<0||ai>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ai]))>>>0);ak=$imul(((65535-s>>>0)),257)>>>0;(am=p+0>>0,((am<0||am>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+am]=(((((al=($imul(ad,ak)>>>0)/65535,(al===al&&al!==1/0&&al!==-1/0)?al>>>0:$throwRuntimeError("integer divide by zero"))+v>>>0))>>>8>>>0)<<24>>>24)));(ao=p+1>>0,((ao<0||ao>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ao]=(((((an=($imul(af,ak)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero"))+y>>>0))>>>8>>>0)<<24>>>24)));(aq=p+2>>0,((aq<0||aq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+aq]=(((((ap=($imul(ah,ak)>>>0)/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))+ab>>>0))>>>8>>>0)<<24>>>24)));(as=p+3>>0,((as<0||as>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+as]=(((((ar=($imul(aj,ak)>>>0)/65535,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"))+s>>>0))>>>8>>>0)<<24>>>24)));at=p+4>>0;au=q+4>>0;p=at;q=au;}av=j+1>>0;aw=k+1>>0;j=av;k=aw;}};R=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((r<0||r>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+r]))>>>0),257)>>>0;v=(t=($imul(((u=q+0>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u]))>>>0),s)>>>0)/255,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));y=(w=($imul(((x=q+1>>0,((x<0||x>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+x]))>>>0),s)>>>0)/255,(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));ab=(z=($imul(((aa=q+2>>0,((aa<0||aa>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+aa]))>>>0),s)>>>0)/255,(z===z&&z!==1/0&&z!==-1/0)?z>>>0:$throwRuntimeError("integer divide by zero"));(ac=p+0>>0,((ac<0||ac>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ac]=((v>>>8>>>0)<<24>>>24)));(ad=p+1>>0,((ad<0||ad>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ad]=((y>>>8>>>0)<<24>>>24)));(ae=p+2>>0,((ae<0||ae>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+ae]=((ab>>>8>>>0)<<24>>>24)));(af=p+3>>0,((af<0||af>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+af]=((s>>>8>>>0)<<24>>>24)));ag=p+4>>0;ah=q+4>>0;p=ag;q=ah;}ai=j+1>>0;aj=k+1>>0;j=ai;k=aj;}};S=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),1);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+q]);(s=p+0>>0,((s<0||s>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+s]=r));(t=p+1>>0,((t<0||t>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+t]=r));(u=p+2>>0,((u<0||u>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+u]=r));(v=p+3>>0,((v<0||v>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+v]=255));w=p+4>>0;x=q+1>>0;p=w;q=x;}y=j+1>>0;z=k+1>>0;j=y;k=z;}};T=function(b,c,d,e){var $ptr,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;e=$clone(e,A.Point);c=$clone(c,A.Rectangle);f=$imul(((c.Min.X-b.Rect.Min.X>>0)),4);g=$imul(((c.Max.X-b.Rect.Min.X>>0)),4);h=$imul(((e.X-d.Rect.Min.X>>0)),4);i=c.Max.Y-b.Rect.Min.Y>>0;j=c.Min.Y-b.Rect.Min.Y>>0;k=e.Y-d.Rect.Min.Y>>0;while(true){if(!(!((j===i)))){break;}l=$subslice(b.Pix,($imul(j,b.Stride)));m=$subslice(d.Pix,($imul(k,d.Stride)));n=f;o=h;p=n;q=o;while(true){if(!(p>0,((s<0||s>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+s])),(t=q+1>>0,((t<0||t>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+t])),(u=q+2>>0,((u<0||u>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+u])),(v=q+3>>0,((v<0||v>=m.$length)?$throwRuntimeError("index out of range"):m.$array[m.$offset+v])));(w=p+0>>0,((w<0||w>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+w]=r[0]));(x=p+1>>0,((x<0||x>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+x]=r[1]));(y=p+2>>0,((y<0||y>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+y]=r[2]));(z=p+3>>0,((z<0||z>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+z]=255));aa=p+4>>0;ab=q+4>>0;p=aa;q=ab;}ac=j+1>>0;ad=k+1>>0;j=ac;k=ad;}};U=function(b,c,d,e,f){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,b,ba,bb,bc,bd,be,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;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;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=$clone(f,A.Point);c=$clone(c,A.Rectangle);g=b.PixOffset(c.Min.X,c.Min.Y);h=g+($imul(c.Dx(),4))>>0;i=e.PixOffset(f.X,f.Y);k=d.RGBA();$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];n=j[2];o=j[3];p=c.Min.Y;q=f.Y;r=p;s=q;while(true){if(!(!((r===c.Max.Y)))){break;}t=g;u=i;v=t;w=u;while(true){if(!(v=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+w]))>>>0);if(y===0){z=v+4>>0;aa=w+1>>0;v=z;w=aa;continue;}y=(y|((y<<8>>>0)))>>>0;ad=((ab=b.Pix,ac=v+0>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]))>>>0);ag=((ae=b.Pix,af=v+1>>0,((af<0||af>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+af]))>>>0);aj=((ah=b.Pix,ai=v+2>>0,((ai<0||ai>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ai]))>>>0);am=((ak=b.Pix,al=v+3>>0,((al<0||al>=ak.$length)?$throwRuntimeError("index out of range"):ak.$array[ak.$offset+al]))>>>0);ao=$imul(((65535-((an=($imul(o,y)>>>0)/65535,(an===an&&an!==1/0&&an!==-1/0)?an>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(aq=b.Pix,ar=v+0>>0,((ar<0||ar>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]=(((ap=((($imul(ad,ao)>>>0)+($imul(l,y)>>>0)>>>0))/65535,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(at=b.Pix,au=v+1>>0,((au<0||au>=at.$length)?$throwRuntimeError("index out of range"):at.$array[at.$offset+au]=(((as=((($imul(ag,ao)>>>0)+($imul(m,y)>>>0)>>>0))/65535,(as===as&&as!==1/0&&as!==-1/0)?as>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(aw=b.Pix,ax=v+2>>0,((ax<0||ax>=aw.$length)?$throwRuntimeError("index out of range"):aw.$array[aw.$offset+ax]=(((av=((($imul(aj,ao)>>>0)+($imul(n,y)>>>0)>>>0))/65535,(av===av&&av!==1/0&&av!==-1/0)?av>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(az=b.Pix,ba=v+3>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]=(((ay=((($imul(am,ao)>>>0)+($imul(o,y)>>>0)>>>0))/65535,(ay===ay&&ay!==1/0&&ay!==-1/0)?ay>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));bb=v+4>>0;bc=w+1>>0;v=bb;w=bc;}g=g+(b.Stride)>>0;h=h+(b.Stride)>>0;i=i+(e.Stride)>>0;bd=r+1>>0;be=s+1>>0;r=bd;s=be;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:U};}$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.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$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;};V=function(b,c,d,e,f,g,h){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,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,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;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;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;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=$clone(g,A.Point);e=$clone(e,A.Point);c=$clone(c,A.Rectangle);i=c.Min.X;j=c.Max.X;k=1;l=i;m=j;n=k;o=c.Min.Y;p=c.Max.Y;q=1;r=o;s=p;t=q;if($interfaceIsEqual(b,d)&&c.Overlaps(c.Add(e.Sub(c.Min)))){if(e.Y>0;v=l-1>>0;w=-1;l=u;m=v;n=w;x=s-1>>0;y=r-1>>0;z=-1;r=x;s=y;t=z;}}aa=(e.Y+r>>0)-c.Min.Y>>0;ab=(g.Y+r>>0)-c.Min.Y>>0;ac=(e.X+l>>0)-c.Min.X>>0;ad=(g.X+l>>0)-c.Min.X>>0;ae=ac+((m-l>>0))>>0;af=b.PixOffset(l,r);ag=$imul(n,4);ah=r;case 1:if(!(!((ah===s)))){$s=2;continue;}ai=af;aj=ac;ak=ad;al=ai;am=aj;an=ak;case 3:if(!(!((am===ae)))){$s=4;continue;}ao=65535;if(!($interfaceIsEqual(f,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:aq=f.At(an,ab);$s=7;case 7:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.RGBA();$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;ao=ap[3];case 6:at=d.At(am,aa);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at.RGBA();$s=10;case 10:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;av=as[0];aw=as[1];ax=as[2];ay=as[3];if(h===0){bb=((az=b.Pix,ba=al+0>>0,((ba<0||ba>=az.$length)?$throwRuntimeError("index out of range"):az.$array[az.$offset+ba]))>>>0);be=((bc=b.Pix,bd=al+1>>0,((bd<0||bd>=bc.$length)?$throwRuntimeError("index out of range"):bc.$array[bc.$offset+bd]))>>>0);bh=((bf=b.Pix,bg=al+2>>0,((bg<0||bg>=bf.$length)?$throwRuntimeError("index out of range"):bf.$array[bf.$offset+bg]))>>>0);bk=((bi=b.Pix,bj=al+3>>0,((bj<0||bj>=bi.$length)?$throwRuntimeError("index out of range"):bi.$array[bi.$offset+bj]))>>>0);bm=$imul(((65535-((bl=($imul(ay,ao)>>>0)/65535,(bl===bl&&bl!==1/0&&bl!==-1/0)?bl>>>0:$throwRuntimeError("integer divide by zero")))>>>0)),257)>>>0;(bo=b.Pix,bp=al+0>>0,((bp<0||bp>=bo.$length)?$throwRuntimeError("index out of range"):bo.$array[bo.$offset+bp]=(((bn=((($imul(bb,bm)>>>0)+($imul(av,ao)>>>0)>>>0))/65535,(bn===bn&&bn!==1/0&&bn!==-1/0)?bn>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(br=b.Pix,bs=al+1>>0,((bs<0||bs>=br.$length)?$throwRuntimeError("index out of range"):br.$array[br.$offset+bs]=(((bq=((($imul(be,bm)>>>0)+($imul(aw,ao)>>>0)>>>0))/65535,(bq===bq&&bq!==1/0&&bq!==-1/0)?bq>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bu=b.Pix,bv=al+2>>0,((bv<0||bv>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bv]=(((bt=((($imul(bh,bm)>>>0)+($imul(ax,ao)>>>0)>>>0))/65535,(bt===bt&&bt!==1/0&&bt!==-1/0)?bt>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(bx=b.Pix,by=al+3>>0,((by<0||by>=bx.$length)?$throwRuntimeError("index out of range"):bx.$array[bx.$offset+by]=(((bw=((($imul(bk,bm)>>>0)+($imul(ay,ao)>>>0)>>>0))/65535,(bw===bw&&bw!==1/0&&bw!==-1/0)?bw>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}else{(ca=b.Pix,cb=al+0>>0,((cb<0||cb>=ca.$length)?$throwRuntimeError("index out of range"):ca.$array[ca.$offset+cb]=(((bz=($imul(av,ao)>>>0)/65535,(bz===bz&&bz!==1/0&&bz!==-1/0)?bz>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cd=b.Pix,ce=al+1>>0,((ce<0||ce>=cd.$length)?$throwRuntimeError("index out of range"):cd.$array[cd.$offset+ce]=(((cc=($imul(aw,ao)>>>0)/65535,(cc===cc&&cc!==1/0&&cc!==-1/0)?cc>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cg=b.Pix,ch=al+2>>0,((ch<0||ch>=cg.$length)?$throwRuntimeError("index out of range"):cg.$array[cg.$offset+ch]=(((cf=($imul(ax,ao)>>>0)/65535,(cf===cf&&cf!==1/0&&cf!==-1/0)?cf>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));(cj=b.Pix,ck=al+3>>0,((ck<0||ck>=cj.$length)?$throwRuntimeError("index out of range"):cj.$array[cj.$offset+ck]=(((ci=($imul(ay,ao)>>>0)/65535,(ci===ci&&ci!==1/0&&ci!==-1/0)?ci>>>0:$throwRuntimeError("integer divide by zero"))>>>8>>>0)<<24>>>24)));}cl=al+ag>>0;cm=am+n>>0;cn=an+n>>0;al=cl;am=cm;an=cn;$s=3;continue;case 4:af=af+(($imul(t,b.Stride)))>>0;co=ah+t>>0;cp=aa+t>>0;cq=ab+t>>0;ah=co;aa=cp;ab=cq;$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V};}$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.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.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.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;};W=function(b){var $ptr,b;if(b<0){return 0;}if(b>65535){return 65535;}return b;};X=function(b,c){var $ptr,b,c,d;d=0;if(b>c){d=((b-c>>0)>>>0);}else{d=((c-b>>0)>>>0);}return(($imul(d,d)>>>0))>>>2>>>0;};Y=function(b,c,d,e,f){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,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,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;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;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;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=[g];e=$clone(e,A.Point);c=$clone(c,A.Rectangle);h=AJ.nil;i=AK.nil;j=0;k=h;l=i;m=j;n=$assertType(b,AB,true);o=n[0];p=n[1];if(p){$s=1;continue;}$s=2;continue;case 1:k=$makeSlice(AJ,o.Palette.$length);q=o.Palette;r=0;case 3:if(!(r=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]);v=t.RGBA();$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=u[3];((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[0]=(w>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[1]=(x>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[2]=(y>>0);((s<0||s>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+s])[3]=(z>>0);r++;$s=3;continue;case 4:aa=$subslice(o.Pix,o.PixOffset(c.Min.X,c.Min.Y));ab=o.Stride;l=aa;m=ab;case 2:ac=AJ.nil;ad=AJ.nil;ae=ac;af=ad;if(f){ae=$makeSlice(AJ,(c.Dx()+2>>0));af=$makeSlice(AJ,(c.Dx()+2>>0));}g[0]=new B.RGBA64.ptr(0,0,0,65535);ag=0;case 6:if(!(!((ag===c.Dy())))){$s=7;continue;}ah=0;case 8:if(!(!((ah===c.Dx())))){$s=9;continue;}aj=d.At(e.X+ah>>0,e.Y+ag>>0);$s=10;case 10:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj.RGBA();$s=11;case 11:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;al=ai[0];am=ai[1];an=ai[2];ao=ai[3];ap=(al>>0);aq=(am>>0);ar=(an>>0);as=(ao>>0);at=ap;au=aq;av=ar;aw=as;if(f){at=W(at+(ax=(ay=ah+1>>0,((ay<0||ay>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ay]))[0]/16,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero"))>>0);au=W(au+(az=(ba=ah+1>>0,((ba<0||ba>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ba]))[1]/16,(az===az&&az!==1/0&&az!==-1/0)?az>>0:$throwRuntimeError("integer divide by zero"))>>0);av=W(av+(bb=(bc=ah+1>>0,((bc<0||bc>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+bc]))[2]/16,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"))>>0);aw=W(aw+(bd=(be=ah+1>>0,((be<0||be>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+be]))[3]/16,(bd===bd&&bd!==1/0&&bd!==-1/0)?bd>>0:$throwRuntimeError("integer divide by zero"))>>0);}if(!(k===AJ.nil)){$s=12;continue;}$s=13;continue;case 12:bf=0;bg=4294967295;bh=bf;bi=bg;bj=k;bk=0;while(true){if(!(bk=bj.$length)?$throwRuntimeError("index out of range"):bj.$array[bj.$offset+bk]),AI);bn=((X(at,bm[0])+X(au,bm[1])>>>0)+X(av,bm[2])>>>0)+X(aw,bm[3])>>>0;if(bn>0,((bq<0||bq>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+bq]=(bh<<24>>>24)));if(!f){ah=ah+(1)>>0;$s=8;continue;}at=at-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[0])>>0;au=au-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[1])>>0;av=av-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[2])>>0;aw=aw-(((bh<0||bh>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+bh])[3])>>0;$s=14;continue;case 13:g[0].R=(at<<16>>>16);g[0].G=(au<<16>>>16);g[0].B=(av<<16>>>16);g[0].A=(aw<<16>>>16);$r=b.Set(c.Min.X+ah>>0,c.Min.Y+ag>>0,g[0]);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!f){$s=16;continue;}$s=17;continue;case 16:ah=ah+(1)>>0;$s=8;continue;case 17:bs=b.At(c.Min.X+ah>>0,c.Min.Y+ag>>0);$s=18;case 18:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs.RGBA();$s=19;case 19:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}br=bt;al=br[0];am=br[1];an=br[2];ao=br[3];at=at-((al>>0))>>0;au=au-((am>>0))>>0;av=av-((an>>0))>>0;aw=aw-((ao>>0))>>0;case 14:bu=ah+0>>0;((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]=(((bu<0||bu>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bu])[0]+(($imul(at,3)))>>0);bv=ah+0>>0;((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]=(((bv<0||bv>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bv])[1]+(($imul(au,3)))>>0);bw=ah+0>>0;((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]=(((bw<0||bw>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bw])[2]+(($imul(av,3)))>>0);bx=ah+0>>0;((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]=(((bx<0||bx>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bx])[3]+(($imul(aw,3)))>>0);by=ah+1>>0;((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]=(((by<0||by>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+by])[0]+(($imul(at,5)))>>0);bz=ah+1>>0;((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]=(((bz<0||bz>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+bz])[1]+(($imul(au,5)))>>0);ca=ah+1>>0;((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]=(((ca<0||ca>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ca])[2]+(($imul(av,5)))>>0);cb=ah+1>>0;((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]=(((cb<0||cb>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cb])[3]+(($imul(aw,5)))>>0);cc=ah+2>>0;((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]=(((cc<0||cc>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cc])[0]+(($imul(at,1)))>>0);cd=ah+2>>0;((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]=(((cd<0||cd>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cd])[1]+(($imul(au,1)))>>0);ce=ah+2>>0;((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]=(((ce<0||ce>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+ce])[2]+(($imul(av,1)))>>0);cf=ah+2>>0;((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]=(((cf<0||cf>=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+cf])[3]+(($imul(aw,1)))>>0);cg=ah+2>>0;((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]=(((cg<0||cg>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cg])[0]+(($imul(at,7)))>>0);ch=ah+2>>0;((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]=(((ch<0||ch>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ch])[1]+(($imul(au,7)))>>0);ci=ah+2>>0;((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]=(((ci<0||ci>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+ci])[2]+(($imul(av,7)))>>0);cj=ah+2>>0;((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]=(((cj<0||cj>=ae.$length)?$throwRuntimeError("index out of range"):ae.$array[ae.$offset+cj])[3]+(($imul(aw,7)))>>0);ah=ah+(1)>>0;$s=8;continue;case 9:if(f){ck=af;cl=ae;ae=ck;af=cl;cm=af;cn=0;while(true){if(!(cn=af.$length)?$throwRuntimeError("index out of range"):af.$array[af.$offset+co]),AI.zero());cn++;}}ag=ag+(1)>>0;$s=6;continue;case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Y};}$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.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.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.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;};$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/graphics"]=(function(){var $pkg={},$init,A,B,C,G,D,H,E,F,J,N,R,AE,AF,AJ,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,K,L,V,W,X,AA,AB,AC,AD,AH,I,M,Q,S,T,U,Y,Z,AG,AI,AK,AL;A=$packages["errors"];B=$packages["fmt"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];G=$packages["image"];D=$packages["image/color"];H=$packages["image/draw"];E=$packages["math"];F=$packages["strings"];J=$pkg.Matrix=$newType(8,$kindInterface,"graphics.Matrix","Matrix","github.com/hajimehoshi/ebiten/internal/graphics",null);N=$pkg.TextureQuads=$newType(8,$kindInterface,"graphics.TextureQuads","TextureQuads","github.com/hajimehoshi/ebiten/internal/graphics",null);R=$pkg.Framebuffer=$newType(0,$kindStruct,"graphics.Framebuffer","Framebuffer","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_,flipY_,proMatrix_){this.$val=this;if(arguments.length===0){this.native$0=new C.Framebuffer.ptr(null);this.width=0;this.height=0;this.flipY=false;this.proMatrix=AS.nil;return;}this.native$0=native$0_;this.width=width_;this.height=height_;this.flipY=flipY_;this.proMatrix=proMatrix_;});AE=$pkg.programContext=$newType(0,$kindStruct,"graphics.programContext","programContext","github.com/hajimehoshi/ebiten/internal/graphics",function(program_,context_,projectionMatrix_,texture_,geoM_,colorM_){this.$val=this;if(arguments.length===0){this.program=new C.Program.ptr(null);this.context=AP.nil;this.projectionMatrix=AM.nil;this.texture=new C.Texture.ptr(null);this.geoM=$ifaceNil;this.colorM=$ifaceNil;return;}this.program=program_;this.context=context_;this.projectionMatrix=projectionMatrix_;this.texture=texture_;this.geoM=geoM_;this.colorM=colorM_;});AF=$pkg.shaderId=$newType(4,$kindInt,"graphics.shaderId","shaderId","github.com/hajimehoshi/ebiten/internal/graphics",null);AJ=$pkg.Texture=$newType(0,$kindStruct,"graphics.Texture","Texture","github.com/hajimehoshi/ebiten/internal/graphics",function(native$0_,width_,height_){this.$val=this;if(arguments.length===0){this.native$0=new C.Texture.ptr(null);this.width=0;this.height=0;return;}this.native$0=native$0_;this.width=width_;this.height=height_;});AM=$sliceType($Float32);AN=$sliceType($Int16);AO=$sliceType($emptyInterface);AP=$ptrType(C.Context);AQ=$arrayType($Float64,4);AR=$arrayType(AQ,4);AS=$ptrType(AR);AT=$ptrType(R);AU=$sliceType(C.Shader);AV=$sliceType($Uint16);AW=$arrayType($Float32,5);AX=$arrayType(AW,4);AY=$ptrType(G.RGBA);AZ=$ptrType(AJ);BA=$sliceType($Uint8);BB=$ptrType(AE);I=function(a){var $ptr,a;return new AM([$fround((a.nilCheck,a[0])[0]),$fround((a.nilCheck,a[1])[0]),$fround((a.nilCheck,a[2])[0]),$fround((a.nilCheck,a[3])[0]),$fround((a.nilCheck,a[0])[1]),$fround((a.nilCheck,a[1])[1]),$fround((a.nilCheck,a[2])[1]),$fround((a.nilCheck,a[3])[1]),$fround((a.nilCheck,a[0])[2]),$fround((a.nilCheck,a[1])[2]),$fround((a.nilCheck,a[2])[2]),$fround((a.nilCheck,a[3])[2]),$fround((a.nilCheck,a[0])[3]),$fround((a.nilCheck,a[1])[3]),$fround((a.nilCheck,a[2])[3]),$fround((a.nilCheck,a[3])[3])]);};M=function(a,b,c,d,e,f){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,$deferred,$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;$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=$clone(b,C.Texture);if(!L){$s=1;continue;}$s=2;continue;case 1:g=Y(a);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return h;case 5:L=true;case 2:i=d.Len();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===0){$s=6;continue;}$s=7;continue;case 6:return $ifaceNil;case 7:j=d.Len();$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(10922>0;$s=16;continue;}n=$append(n,(t<<16>>16),(u<<16>>16),(z<<16>>16),(aa<<16>>16),(v<<16>>16),(u<<16>>16),(ab<<16>>16),(aa<<16>>16),(t<<16>>16),(w<<16>>16),(z<<16>>16),(ac<<16>>16),(v<<16>>16),(w<<16>>16),(ab<<16>>16),(ac<<16>>16));o=o+(1)>>0;p=p+(1)>>0;$s=16;continue;case 17:if(n.$length===0){return $ifaceNil;}a.BufferSubData(a.ArrayBuffer,n);a.DrawElements(a.Triangles,$imul(6,o));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:M};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h;e=2/(b-a>>0);f=2/(d-c>>0);g=-1*(b+a>>0)/(b-a>>0);h=-1*(d+c>>0)/(d-c>>0);return $toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,0,0,g]),$toNativeArray($kindFloat64,[0,f,0,h]),$toNativeArray($kindFloat64,[0,0,1,0]),$toNativeArray($kindFloat64,[0,0,0,1])]);};S=function(a,b,c){var $ptr,a,b,c,d;d=new R.ptr(new C.Framebuffer.ptr(null),b,c,true,AS.nil);return[d,$ifaceNil];};$pkg.NewZeroFramebuffer=S;T=function(a,b){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:d=a.NewFramebuffer(b.native$0);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=$clone(c[0],C.Framebuffer);f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return[AT.nil,f];}g=b.Size();h=g[0];i=g[1];return[new R.ptr($clone(e,C.Framebuffer),h,i,false,AS.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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;};$pkg.NewFramebufferFromTexture=T;R.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;if($equal(b.native$0,C.ZeroFramebuffer,C.Framebuffer)){return;}a.DeleteFramebuffer(b.native$0);};R.prototype.Dispose=function(a){return this.$val.Dispose(a);};R.ptr.prototype.setAsViewport=function(a){var $ptr,a,b,c,d;b=this;c=U(b.width);d=U(b.height);return a.SetViewport(b.native$0,c,d);};R.prototype.setAsViewport=function(a){return this.$val.setAsViewport(a);};R.ptr.prototype.projectionMatrix=function(){var $ptr,a,b,c,d;a=this;if(!($equal(a.proMatrix,AS.nil,AR))){return a.proMatrix;}b=U(a.width);c=U(a.height);d=Q(0,b,0,c);if(a.flipY){(d.nilCheck,d[1])[1]=(d.nilCheck,d[1])[1]*(-1);(d.nilCheck,d[1])[3]=(d.nilCheck,d[1])[3]+(a.height/U(a.height)*2);}a.proMatrix=d;return a.proMatrix;};R.prototype.projectionMatrix=function(){return this.$val.projectionMatrix();};R.ptr.prototype.Fill=function(a,b){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:c=this;d=c.setAsViewport(a);if(!($interfaceIsEqual(d,$ifaceNil))){return d;}f=b.RGBA();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];i=e[2];j=e[3];k=g/65535;l=h/65535;m=i/65535;n=j/65535;return a.FillFramebuffer(k,l,m,n);}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Fill};}$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;};R.prototype.Fill=function(a,b){return this.$val.Fill(a,b);};R.ptr.prototype.DrawTexture=function(a,b,c,d,e){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:f=this;g=f.setAsViewport(a);if(!($interfaceIsEqual(g,$ifaceNil))){return g;}h=f.projectionMatrix();i=M(a,b.native$0,h,c,d,e);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=2;case 2:return i;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.DrawTexture};}$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;};R.prototype.DrawTexture=function(a,b,c,d,e){return this.$val.DrawTexture(a,b,c,d,e);};R.ptr.prototype.Pixels=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=b.Size();d=c[0];e=c[1];f=U(d);g=U(e);d=f;e=g;h=a.FramebufferPixels(b.native$0,d,e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=2;case 2:return h;}return;}if($f===undefined){$f={$blk:R.ptr.prototype.Pixels};}$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;};R.prototype.Pixels=function(a){return this.$val.Pixels(a);};U=function(a){var $ptr,a;a=a-(1)>>0;a=a|(((a>>1>>0)));a=a|(((a>>2>>0)));a=a|(((a>>4>>0)));a=a|(((a>>8>>0)));a=a|(((a>>16>>0)));return a+1>>0;};$pkg.NextPowerOf2Int=U;Y=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$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;$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);c=a.NewShader(a.VertexShader,AG(a,0));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=$clone(b[0],C.Shader);e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(d,C.Shader)]]);g=a.NewShader(a.FragmentShader,AG(a,1));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=$clone(f[0],C.Shader);e=f[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}$deferred.push([$methodVal(a,"DeleteShader"),[$clone(h,C.Shader)]]);i=a.NewProgram(new AU([$clone(d,C.Shader),$clone(h,C.Shader)]));C.Program.copy(X,i[0]);e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}a.NewBuffer(a.ArrayBuffer,new $Int(699008),a.DynamicDraw);j=$makeSlice(AV,65532);k=0;while(true){if(!(k<10922)){break;}(l=(6*k<<16>>>16)+0<<16>>>16,((l<0||l>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+l]=((4*k<<16>>>16)+0<<16>>>16)));(m=(6*k<<16>>>16)+1<<16>>>16,((m<0||m>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+m]=((4*k<<16>>>16)+1<<16>>>16)));(n=(6*k<<16>>>16)+2<<16>>>16,((n<0||n>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+n]=((4*k<<16>>>16)+2<<16>>>16)));(o=(6*k<<16>>>16)+3<<16>>>16,((o<0||o>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+o]=((4*k<<16>>>16)+1<<16>>>16)));(p=(6*k<<16>>>16)+4<<16>>>16,((p<0||p>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+p]=((4*k<<16>>>16)+2<<16>>>16)));(q=(6*k<<16>>>16)+5<<16>>>16,((q<0||q>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+q]=((4*k<<16>>>16)+3<<16>>>16)));k=k+(1)<<16>>>16;}C.Buffer.copy(W,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));j=$makeSlice(AV,65536);r=0;while(true){if(!(r=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+r]=(r<<16>>>16));r=r+(1)>>0;}C.Buffer.copy(V,a.NewBuffer(a.ElementArrayBuffer,j,a.StaticDraw));return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Y};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Z=function(a,b){var $ptr,a,b,c;if(!((a.$length===b.$length))){return false;}c=0;while(true){if(!(c=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+c])===((c<0||c>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c])))){return false;}c=c+(1)>>0;}return true;};AE.ptr.prototype.begin=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,$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:a=this;b=a.context;if(!AA.Equals(a.program)){b.UseProgram(a.program);C.Program.copy(AA,X);AB=AM.nil;AC=AM.nil;AD=AM.nil;}b.BindElementArrayBuffer(W);if(!Z(AB,a.projectionMatrix)){$s=1;continue;}$s=2;continue;case 1:$r=b.UniformFloats(a.program,"projection_matrix",a.projectionMatrix);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AB===AM.nil){AB=$makeSlice(AM,16);}$copySlice(AB,a.projectionMatrix);case 2:c=a.geoM.Element(0,0);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$fround(c);e=a.geoM.Element(0,1);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$fround(e);g=a.geoM.Element(1,0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=$fround(g);i=a.geoM.Element(1,1);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$fround(i);k=a.geoM.Element(0,2);$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$fround(k);m=a.geoM.Element(1,2);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$fround(m);o=new AM([d,h,0,0,f,j,0,0,0,0,1,0,l,n,0,1]);if(!Z(AC,o)){$s=10;continue;}$s=11;continue;case 10:$r=b.UniformFloats(a.program,"modelview_matrix",o);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AC===AM.nil){AC=$makeSlice(AM,16);}$copySlice(AC,o);case 11:$r=b.UniformInt(a.program,"texture",0);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=AX.zero();q=0;case 14:if(!(q<4)){$s=15;continue;}r=0;case 16:if(!(r<5)){$s=17;continue;}s=a.colorM.Element(q,r);$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}(t=((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q]),((r<0||r>=t.length)?$throwRuntimeError("index out of range"):t[r]=$fround(s)));r=r+(1)>>0;$s=16;continue;case 17:q=q+(1)>>0;$s=14;continue;case 15:u=new AM([p[0][0],p[1][0],p[2][0],p[3][0],p[0][1],p[1][1],p[2][1],p[3][1],p[0][2],p[1][2],p[2][2],p[3][2],p[0][3],p[1][3],p[2][3],p[3][3]]);if(!Z(AD,u)){$s=19;continue;}$s=20;continue;case 19:$r=b.UniformFloats(a.program,"color_matrix",u);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(AD===AM.nil){AD=$makeSlice(AM,16);}$copySlice(AD,u);case 20:v=new AM([p[0][4],p[1][4],p[2][4],p[3][4]]);$r=b.UniformFloats(a.program,"color_matrix_translation",v);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.BindTexture(a.texture);$r=b.EnableVertexAttribArray(a.program,"vertex");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.EnableVertexAttribArray(a.program,"tex_coord");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"vertex",true,false,8,2,0);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.VertexAttribPointer(a.program,"tex_coord",true,true,8,2,4);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.begin};}$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;};AE.prototype.begin=function(){return this.$val.begin();};AE.ptr.prototype.end=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.context;$r=b.DisableVertexAttribArray(a.program,"tex_coord");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.DisableVertexAttribArray(a.program,"vertex");$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.end};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.end=function(){return this.$val.end();};AG=function(a,b){var $ptr,a,b,c,d;d=(c=AH[AF.keyFor(b)],c!==undefined?c.v:"");if(!a.GlslHighpSupported()){d=F.Replace(d,"highp ","",-1);d=F.Replace(d,"lowp ","",-1);}return d;};AI=function(a){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=a.Bounds();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c.Size();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d.X;f=a.Bounds();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f.Size();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g.Y;h=b;i=e;j=new G.Rectangle.ptr($clone(G.ZP,G.Point),new G.Point.ptr(U(h),U(i)));k=$assertType(a,AY,true);l=k[0];m=k[1];if(!(m)){n=false;$s=7;continue s;}o=a.Bounds();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=$equal(o,j,G.Rectangle);case 7:if(n){$s=5;continue;}$s=6;continue;case 5:return l;case 6:p=G.NewRGBA(j);q=a.Bounds();$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q.Size();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new G.Rectangle.ptr($clone(G.ZP,G.Point),$clone(r,G.Point));$r=H.Draw(p,s,a,G.ZP,1);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return p;}return;}if($f===undefined){$f={$blk:AI};}$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;};AJ.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=this;d=c.width;e=c.height;a=d;b=e;return[a,b];};AJ.prototype.Size=function(){return this.$val.Size();};AK=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;e=U(b);f=U(c);if(e<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=a.NewTexture(e,f,BA.nil,d);h=$clone(g[0],C.Texture);i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return[AZ.nil,i];}return[new AJ.ptr($clone(h,C.Texture),b,c),$ifaceNil];};$pkg.NewTexture=AK;AL=function(a,b,c){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:d=b.Bounds();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d.Size();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=$clone(e,G.Point);if(f.X<4){return[AZ.nil,A.New("width must be equal or more than 4.")];}if(f.Y<4){return[AZ.nil,A.New("height must be equal or more than 4.")];}g=AI(b);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h.Bounds().Size(),G.Point);j=a.NewTexture(i.X,i.Y,h.Pix,c);k=$clone(j[0],C.Texture);l=j[1];if(!($interfaceIsEqual(l,$ifaceNil))){return[AZ.nil,l];}return[new AJ.ptr($clone(k,C.Texture),f.X,f.Y),$ifaceNil];}return;}if($f===undefined){$f={$blk:AL};}$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.NewTextureFromImage=AL;AJ.ptr.prototype.Dispose=function(a){var $ptr,a,b;b=this;a.DeleteTexture(b.native$0);};AJ.prototype.Dispose=function(a){return this.$val.Dispose(a);};AJ.ptr.prototype.ReplacePixels=function(a,b){var $ptr,a,b,c;c=this;a.BindTexture(c.native$0);a.TexSubImage2D(b,c.width,c.height);return $ifaceNil;};AJ.prototype.ReplacePixels=function(a,b){return this.$val.ReplacePixels(a,b);};AT.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"setAsViewport",name:"setAsViewport",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([AP],[$error],false)},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[AS],false)},{prop:"Fill",name:"Fill",pkg:"",typ:$funcType([AP,D.Color],[$error],false)},{prop:"DrawTexture",name:"DrawTexture",pkg:"",typ:$funcType([AP,AZ,N,J,J],[$error],false)},{prop:"Pixels",name:"Pixels",pkg:"",typ:$funcType([AP],[BA,$error],false)}];BB.methods=[{prop:"begin",name:"begin",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)},{prop:"end",name:"end",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$funcType([],[],false)}];AZ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Dispose",name:"Dispose",pkg:"",typ:$funcType([AP],[],false)},{prop:"ReplacePixels",name:"ReplacePixels",pkg:"",typ:$funcType([AP,BA],[$error],false)}];J.init([{prop:"Element",name:"Element",pkg:"",typ:$funcType([$Int,$Int],[$Float64],false)}]);N.init([{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Texture",name:"Texture",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)},{prop:"Vertex",name:"Vertex",pkg:"",typ:$funcType([$Int],[$Int,$Int,$Int,$Int],false)}]);R.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Framebuffer,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"flipY",name:"flipY",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Bool,tag:""},{prop:"proMatrix",name:"proMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AS,tag:""}]);AE.init([{prop:"program",name:"program",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Program,tag:""},{prop:"context",name:"context",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AP,tag:""},{prop:"projectionMatrix",name:"projectionMatrix",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:AM,tag:""},{prop:"texture",name:"texture",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"geoM",name:"geoM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""},{prop:"colorM",name:"colorM",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:J,tag:""}]);AJ.init([{prop:"native$0",name:"native",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:C.Texture,tag:""},{prop:"width",name:"width",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"github.com/hajimehoshi/ebiten/internal/graphics",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=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=G.$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=H.$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;}V=new C.Buffer.ptr(null);W=new C.Buffer.ptr(null);X=new C.Program.ptr(null);AA=new C.Program.ptr(null);AB=AM.nil;AC=AM.nil;AD=AM.nil;L=false;K=$makeSlice(AN,0,349504);AH=$makeMap(AF.keyFor,[{k:0,v:"\nuniform highp mat4 projection_matrix;\nuniform highp mat4 modelview_matrix;\nattribute highp vec2 vertex;\nattribute highp vec2 tex_coord;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n vertex_out_tex_coord = tex_coord;\n gl_Position = projection_matrix * modelview_matrix * vec4(vertex, 0, 1);\n}\n"},{k:1,v:"\nuniform lowp sampler2D texture;\nuniform lowp mat4 color_matrix;\nuniform lowp vec4 color_matrix_translation;\nvarying highp vec2 vertex_out_tex_coord;\n\nvoid main(void) {\n lowp vec4 color = texture2D(texture, vertex_out_tex_coord);\n\n if (color_matrix != mat4(1.0) || color_matrix_translation != vec4(0.0)) {\n // Un-premultiply alpha\n color.rgb /= color.a;\n // Apply the color matrix\n color = (color_matrix * color) + color_matrix_translation;\n color = clamp(color, 0.0, 1.0);\n // Premultiply alpha\n color.rgb *= color.a;\n }\n\n gl_FragColor = color;\n}\n"}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/internal/ui"]=(function(){var $pkg={},$init,A,B,C,M,N,AC,AK,AL,AM,AN,AO,AP,AQ,AR,AS,L,AJ,Q,AB,AD,S,T,U,V,W,X,Y,Z,AA,AE,AF,AG,AH,AI;A=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["time"];M=$pkg.input=$newType(0,$kindStruct,"ui.input","input","github.com/hajimehoshi/ebiten/internal/ui",function(keyPressed_,mouseButtonPressed_,cursorX_,cursorY_,gamepads_){this.$val=this;if(arguments.length===0){this.keyPressed=AK.zero();this.mouseButtonPressed=AK.zero();this.cursorX=0;this.cursorY=0;this.gamepads=AM.zero();return;}this.keyPressed=keyPressed_;this.mouseButtonPressed=mouseButtonPressed_;this.cursorX=cursorX_;this.cursorY=cursorY_;this.gamepads=gamepads_;});N=$pkg.gamePad=$newType(0,$kindStruct,"ui.gamePad","gamePad","github.com/hajimehoshi/ebiten/internal/ui",function(axisNum_,axes_,buttonNum_,buttonPressed_){this.$val=this;if(arguments.length===0){this.axisNum=0;this.axes=AL.zero();this.buttonNum=0;this.buttonPressed=AK.zero();return;}this.axisNum=axisNum_;this.axes=axes_;this.buttonNum=buttonNum_;this.buttonPressed=buttonPressed_;});AC=$pkg.userInterface=$newType(0,$kindStruct,"ui.userInterface","userInterface","github.com/hajimehoshi/ebiten/internal/ui",function(){this.$val=this;if(arguments.length===0){return;}});AK=$arrayType($Bool,256);AL=$arrayType($Float64,16);AM=$arrayType(N,16);AN=$structType([]);AO=$funcType([],[],false);AP=$ptrType(A.Object);AQ=$funcType([AP],[],false);AR=$ptrType(M);AS=$ptrType(AC);M.ptr.prototype.KeyDown=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=true));};M.prototype.KeyDown=function(a){return this.$val.KeyDown(a);};M.ptr.prototype.KeyUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;c=(d=Q[$Int.keyFor(a)],d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){return;}(g=b.keyPressed,((e<0||e>=g.length)?$throwRuntimeError("index out of range"):g[e]=false));};M.prototype.KeyUp=function(a){return this.$val.KeyUp(a);};M.ptr.prototype.MouseDown=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=true;}else if(d===1){c.nilCheck,c[2]=true;}else if(d===2){c.nilCheck,c[1]=true;}};M.prototype.MouseDown=function(a){return this.$val.MouseDown(a);};M.ptr.prototype.MouseUp=function(a){var $ptr,a,b,c,d;b=this;c=b.mouseButtonPressed;d=a;if(d===0){c.nilCheck,c[0]=false;}else if(d===1){c.nilCheck,c[2]=false;}else if(d===2){c.nilCheck,c[1]=false;}};M.prototype.MouseUp=function(a){return this.$val.MouseUp(a);};M.ptr.prototype.SetMouseCursor=function(a,b){var $ptr,a,b,c,d,e;c=this;d=a;e=b;c.cursorX=d;c.cursorY=e;};M.prototype.SetMouseCursor=function(a,b){return this.$val.SetMouseCursor(a,b);};M.ptr.prototype.UpdateGamepads=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;a=this;b=$global.navigator;if(b.getGamepads===undefined){return;}c=b.getGamepads();d=$parseInt(c.length)>>0;e=0;while(true){if(!(e>0;continue;}g=f.axes;h=$parseInt(g.length)>>0;(i=a.gamepads,((e<0||e>=i.length)?$throwRuntimeError("index out of range"):i[e])).axisNum=h;j=0;while(true){if(!(j<16)){break;}if(h<=j){(k=(l=a.gamepads,((e<0||e>=l.length)?$throwRuntimeError("index out of range"):l[e])).axes,((j<0||j>=k.length)?$throwRuntimeError("index out of range"):k[j]=0));j=j+(1)>>0;continue;}(m=(n=a.gamepads,((e<0||e>=n.length)?$throwRuntimeError("index out of range"):n[e])).axes,((j<0||j>=m.length)?$throwRuntimeError("index out of range"):m[j]=$parseFloat(g[j])));j=j+(1)>>0;}o=f.buttons;p=$parseInt(o.length)>>0;(q=a.gamepads,((e<0||e>=q.length)?$throwRuntimeError("index out of range"):q[e])).buttonNum=p;r=0;while(true){if(!(r<256)){break;}if(p<=r){(s=(t=a.gamepads,((e<0||e>=t.length)?$throwRuntimeError("index out of range"):t[e])).buttonPressed,((r<0||r>=s.length)?$throwRuntimeError("index out of range"):s[r]=false));r=r+(1)>>0;continue;}(u=(v=a.gamepads,((e<0||e>=v.length)?$throwRuntimeError("index out of range"):v[e])).buttonPressed,((r<0||r>=u.length)?$throwRuntimeError("index out of range"):u[r]=!!(o[r].pressed)));r=r+(1)>>0;}e=e+(1)>>0;}};M.prototype.UpdateGamepads=function(){return this.$val.UpdateGamepads();};S=function(){var $ptr;return new $Int64(0,$parseFloat($global.performance.now())*1e+06);};$pkg.Now=S;T=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:T};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ExecOnUIThread=T;U=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g;e=0;f=$ifaceNil;g=AD.start(a,b,c,d);e=g[0];f=g[1];return[e,f];};$pkg.Start=U;V=function(){var $ptr;AD.terminate();};$pkg.Terminate=V;W=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=AD.doEvents();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DoEvents=W;X=function(){var $ptr;return AD.isClosed();};$pkg.IsClosed=X;Y=function(){var $ptr;AD.swapBuffers();};$pkg.SwapBuffers=Y;Z=function(a,b){var $ptr,a,b,c,d,e;c=$parseInt(AB.dataset.ebitenScale)>>0;d=AD.setScreenSize(a,b,c);e=$parseInt(AB.dataset.ebitenActualScale)>>0;return[d,e];};$pkg.SetScreenSize=Z;AA=function(a){var $ptr,a,b,c,d,e,f;b=AD.size();c=b[0];d=b[1];e=AD.setScreenSize(c,d,a);f=$parseInt(AB.dataset.ebitenActualScale)>>0;return[e,f];};$pkg.SetScreenScale=AA;AE=function(){var $ptr;return!!!($global.document.hidden);};AF=function(){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=[c];c[0]=new $Chan(AN,0);a[0]=1;b[0]=$throwNilPointerError;b[0]=(function(a,b,c){return function(){var $ptr;if(0>0;$global.window.requestAnimationFrame($externalize(b[0],AO));return;}$close(c[0]);};})(a,b,c);$r=b[0]();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$recv(c[0]);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AC.ptr.prototype.doEvents=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=AF();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(!(!AE())){$s=3;continue;}$r=AF();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=2;continue;case 3:L.UpdateGamepads();return $ifaceNil;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.doEvents};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.doEvents=function(){return this.$val.doEvents();};AC.ptr.prototype.terminate=function(){var $ptr;};AC.prototype.terminate=function(){return this.$val.terminate();};AC.ptr.prototype.isClosed=function(){var $ptr;return false;};AC.prototype.isClosed=function(){return this.$val.isClosed();};AC.ptr.prototype.swapBuffers=function(){var $ptr;};AC.prototype.swapBuffers=function(){return this.$val.swapBuffers();};AG=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=[a];if(!($global.require===undefined)){return;}b=$global.document;c=$global.window;if(b.body===null){$s=1;continue;}$s=2;continue;case 1:a[0]=new $Chan(AN,0);c.addEventListener($externalize("load",$String),$externalize((function(a){return function(){var $ptr;$close(a[0]);};})(a),AO));d=$recv(a[0]);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d[0];case 2:AB=b.createElement($externalize("canvas",$String));AB.width=16;AB.height=16;b.body.appendChild(AB);e=b.documentElement.style;e.height=$externalize("100%",$String);e.margin=$externalize("0",$String);e.padding=$externalize("0",$String);f=b.body.style;f.backgroundColor=$externalize("#000",$String);f.position=$externalize("relative",$String);f.height=$externalize("100%",$String);f.margin=$externalize("0",$String);f.padding=$externalize("0",$String);b.body.addEventListener($externalize("click",$String),$externalize((function(a){return function(){var $ptr;AB.focus();};})(a),AO));g=AB.style;g.position=$externalize("absolute",$String);AB.setAttribute($externalize("tabindex",$String),1);AB.style.outline=$externalize("none",$String);AB.addEventListener($externalize("keydown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyDown(i);};})(a),AQ));AB.addEventListener($externalize("keyup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.keyCode)>>0;L.KeyUp(i);};})(a),AQ));AB.addEventListener($externalize("mousedown",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseDown(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mouseup",$String),$externalize((function(a){return function(h){var $ptr,h,i;h.preventDefault();i=$parseInt(h.button)>>0;L.MouseUp(i);AH(h);};})(a),AQ));AB.addEventListener($externalize("mousemove",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();AH(h);};})(a),AQ));AB.addEventListener($externalize("contextmenu",$String),$externalize((function(a){return function(h){var $ptr,h;h.preventDefault();};})(a),AQ));AB.addEventListener($externalize("touchstart",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseDown(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchend",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();L.MouseUp(0);i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));AB.addEventListener($externalize("touchmove",$String),$externalize((function(a){return function(h){var $ptr,h,i,j;h.preventDefault();i=h.changedTouches;j=i[0];AH(j);};})(a),AQ));c.addEventListener($externalize("gamepadconnected",$String),$externalize((function(a){return function(h){var $ptr,h;};})(a),AQ));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AG};}$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.Init=AG;AH=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=$parseInt(AB.dataset.ebitenScale)>>0;c=AB.getBoundingClientRect();d=$parseInt(a.clientX)>>0;e=$parseInt(a.clientY)>>0;f=d;g=e;f=f-(($parseInt(c.left)>>0))>>0;g=g-(($parseInt(c.top)>>0))>>0;L.SetMouseCursor((h=f/b,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),(i=g/b,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")));};AI=function(){var $ptr,a;a=$parseInt($global.window.devicePixelRatio)>>0;if(a===0){a=1;}return a;};AC.ptr.prototype.start=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j;e=0;f=$ifaceNil;g=this;h=$global.document;h.title=$externalize(d,$String);g.setScreenSize(a,b,c);AB.focus();e=$parseInt(AB.dataset.ebitenActualScale)>>0;i=e;j=$ifaceNil;e=i;f=j;return[e,f];};AC.prototype.start=function(a,b,c,d){return this.$val.start(a,b,c,d);};AC.ptr.prototype.size=function(){var $ptr,a,b,c,d,e;a=0;b=0;c=$parseInt(AB.dataset.ebitenActualScale)>>0;if(c===0){return[a,b];}a=(d=($parseInt(AB.width)>>0)/c,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));b=(e=($parseInt(AB.height)>>0)/c,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"));return[a,b];};AC.prototype.size=function(){return this.$val.size();};AC.ptr.prototype.setScreenSize=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.size();f=e[0];g=e[1];h=$parseInt(AB.dataset.ebitenScale)>>0;if((f===a)&&(g===b)&&(h===c)){return false;}i=$imul(c,AI());AB.width=$imul(a,i);AB.height=$imul(b,i);AB.dataset.ebitenScale=c;AB.dataset.ebitenActualScale=i;j=AB.style;k=$imul(a,c);l=$imul(b,c);j.width=$externalize(B.Itoa(k)+"px",$String);j.height=$externalize(B.Itoa(l)+"px",$String);j.left=$externalize("calc((100% - "+B.Itoa(k)+"px) / 2)",$String);j.top=$externalize("calc((100% - "+B.Itoa(l)+"px) / 2)",$String);return true;};AC.prototype.setScreenSize=function(a,b,c){return this.$val.setScreenSize(a,b,c);};AR.methods=[{prop:"KeyDown",name:"KeyDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"KeyUp",name:"KeyUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseDown",name:"MouseDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"MouseUp",name:"MouseUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetMouseCursor",name:"SetMouseCursor",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"UpdateGamepads",name:"UpdateGamepads",pkg:"",typ:$funcType([],[],false)}];AS.methods=[{prop:"doEvents",name:"doEvents",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$error],false)},{prop:"terminate",name:"terminate",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"isClosed",name:"isClosed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Bool],false)},{prop:"swapBuffers",name:"swapBuffers",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[],false)},{prop:"start",name:"start",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int,$String],[$Int,$error],false)},{prop:"size",name:"size",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([],[$Int,$Int],false)},{prop:"setScreenSize",name:"setScreenSize",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$funcType([$Int,$Int,$Int],[$Bool],false)}];M.init([{prop:"keyPressed",name:"keyPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"mouseButtonPressed",name:"mouseButtonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""},{prop:"cursorX",name:"cursorX",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"cursorY",name:"cursorY",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"gamepads",name:"gamepads",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AM,tag:""}]);N.init([{prop:"axisNum",name:"axisNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"axes",name:"axes",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AL,tag:""},{prop:"buttonNum",name:"buttonNum",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:$Int,tag:""},{prop:"buttonPressed",name:"buttonPressed",pkg:"github.com/hajimehoshi/ebiten/internal/ui",typ:AK,tag:""}]);AC.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;}L=new M.ptr(AK.zero(),AK.zero(),0,0,AM.zero());AB=null;Q=$makeMap($Int.keyFor,[{k:8,v:37},{k:9,v:67},{k:13,v:44},{k:16,v:65},{k:17,v:40},{k:18,v:36},{k:20,v:38},{k:27,v:45},{k:32,v:66},{k:33,v:62},{k:34,v:61},{k:35,v:43},{k:36,v:58},{k:37,v:60},{k:38,v:68},{k:39,v:64},{k:40,v:42},{k:45,v:59},{k:46,v:41},{k:48,v:0},{k:49,v:1},{k:50,v:2},{k:51,v:3},{k:52,v:4},{k:53,v:5},{k:54,v:6},{k:55,v:7},{k:56,v:8},{k:57,v:9},{k:65,v:10},{k:66,v:11},{k:67,v:12},{k:68,v:13},{k:69,v:14},{k:70,v:15},{k:71,v:16},{k:72,v:17},{k:73,v:18},{k:74,v:19},{k:75,v:20},{k:76,v:21},{k:77,v:22},{k:78,v:23},{k:79,v:24},{k:80,v:25},{k:81,v:26},{k:82,v:27},{k:83,v:28},{k:84,v:29},{k:85,v:30},{k:86,v:31},{k:87,v:32},{k:88,v:33},{k:89,v:34},{k:90,v:35},{k:112,v:46},{k:113,v:47},{k:114,v:48},{k:115,v:49},{k:116,v:50},{k:117,v:51},{k:118,v:52},{k:119,v:53},{k:120,v:54},{k:121,v:55},{k:122,v:56},{k:123,v:57},{k:188,v:39},{k:190,v:63}]);AD=new AC.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten"]=(function(){var $pkg={},$init,E,F,J,D,C,B,G,H,A,I,K,P,V,AD,AE,AF,AI,AJ,AK,AL,AO,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,AP,BA,N,O,AA,AB,AC,AH,AM,AN,AQ,BC;E=$packages["errors"];F=$packages["fmt"];J=$packages["github.com/hajimehoshi/ebiten/internal/audio"];D=$packages["github.com/hajimehoshi/ebiten/internal/graphics"];C=$packages["github.com/hajimehoshi/ebiten/internal/graphics/opengl"];B=$packages["github.com/hajimehoshi/ebiten/internal/ui"];G=$packages["image"];H=$packages["image/color"];A=$packages["math"];I=$packages["runtime"];K=$packages["time"];P=$pkg.ColorM=$newType(0,$kindStruct,"ebiten.ColorM","ColorM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BI.zero();return;}this.initialized=initialized_;this.es=es_;});V=$pkg.GeoM=$newType(0,$kindStruct,"ebiten.GeoM","GeoM","github.com/hajimehoshi/ebiten",function(initialized_,es_){this.$val=this;if(arguments.length===0){this.initialized=false;this.es=BK.zero();return;}this.initialized=initialized_;this.es=es_;});AD=$pkg.graphicsContext=$newType(0,$kindStruct,"ebiten.graphicsContext","graphicsContext","github.com/hajimehoshi/ebiten",function(screen_,defaultRenderTarget_,screenScale_){this.$val=this;if(arguments.length===0){this.screen=BL.nil;this.defaultRenderTarget=BL.nil;this.screenScale=0;return;}this.screen=screen_;this.defaultRenderTarget=defaultRenderTarget_;this.screenScale=screenScale_;});AE=$pkg.Image=$newType(0,$kindStruct,"ebiten.Image","Image","github.com/hajimehoshi/ebiten",function(framebuffer_,texture_,pixels_,width_,height_){this.$val=this;if(arguments.length===0){this.framebuffer=BO.nil;this.texture=BP.nil;this.pixels=BQ.nil;this.width=0;this.height=0;return;}this.framebuffer=framebuffer_;this.texture=texture_;this.pixels=pixels_;this.width=width_;this.height=height_;});AF=$pkg.DrawImageOptions=$newType(0,$kindStruct,"ebiten.DrawImageOptions","DrawImageOptions","github.com/hajimehoshi/ebiten",function(ImageParts_,GeoM_,ColorM_,Parts_){this.$val=this;if(arguments.length===0){this.ImageParts=$ifaceNil;this.GeoM=new V.ptr(false,BK.zero());this.ColorM=new P.ptr(false,BI.zero());this.Parts=BN.nil;return;}this.ImageParts=ImageParts_;this.GeoM=GeoM_;this.ColorM=ColorM_;this.Parts=Parts_;});AI=$pkg.ImagePart=$newType(0,$kindStruct,"ebiten.ImagePart","ImagePart","github.com/hajimehoshi/ebiten",function(Dst_,Src_){this.$val=this;if(arguments.length===0){this.Dst=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));this.Src=new G.Rectangle.ptr(new G.Point.ptr(0,0),new G.Point.ptr(0,0));return;}this.Dst=Dst_;this.Src=Src_;});AJ=$pkg.ImageParts=$newType(8,$kindInterface,"ebiten.ImageParts","ImageParts","github.com/hajimehoshi/ebiten",null);AK=$pkg.imageParts=$newType(12,$kindSlice,"ebiten.imageParts","imageParts","github.com/hajimehoshi/ebiten",null);AL=$pkg.wholeImage=$newType(0,$kindStruct,"ebiten.wholeImage","wholeImage","github.com/hajimehoshi/ebiten",function(width_,height_){this.$val=this;if(arguments.length===0){this.width=0;this.height=0;return;}this.width=width_;this.height=height_;});AO=$pkg.textureQuads=$newType(0,$kindStruct,"ebiten.textureQuads","textureQuads","github.com/hajimehoshi/ebiten",function(parts_,width_,height_){this.$val=this;if(arguments.length===0){this.parts=$ifaceNil;this.width=0;this.height=0;return;}this.parts=parts_;this.width=width_;this.height=height_;});BF=$ptrType(C.Context);BG=$structType([{prop:"running",name:"running",pkg:"github.com/hajimehoshi/ebiten",typ:$Bool,tag:""},{prop:"fps",name:"fps",pkg:"github.com/hajimehoshi/ebiten",typ:$Float64,tag:""},{prop:"newScreenWidth",name:"newScreenWidth",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenHeight",name:"newScreenHeight",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""},{prop:"newScreenScale",name:"newScreenScale",pkg:"github.com/hajimehoshi/ebiten",typ:$Int,tag:""}]);BH=$arrayType($Float64,5);BI=$arrayType(BH,4);BJ=$arrayType($Float64,3);BK=$arrayType(BJ,2);BL=$ptrType(AE);BM=$ptrType(AD);BN=$sliceType(AI);BO=$ptrType(D.Framebuffer);BP=$ptrType(D.Texture);BQ=$sliceType($Uint8);BR=$ptrType(AF);BS=$sliceType($emptyInterface);BT=$funcType([BL],[$error],false);BU=$ptrType(P);BV=$ptrType(V);BW=$ptrType(AL);BX=$ptrType(AO);N=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}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.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};O=function(a,b,c){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:d=a.dim();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=b.dim();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!((e===f))){$s=2;continue;}$s=3;continue;case 2:$panic(new $String("diffrent-sized matrices can't be multiplied"));case 3:g=0;case 5:if(!(g<(e-1>>0))){$s=6;continue;}h=0;case 7:if(!(h>0))){$s=10;continue;}k=a.Element(g,j);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=b.Element(j,h);$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i=i+(k*l);j=j+(1)>>0;$s=9;continue;case 10:if(h===(e-1>>0)){$s=13;continue;}$s=14;continue;case 13:m=a.Element(g,h);$s=15;case 15:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}i=i+(m);case 14:$r=c.SetElement(g,h,i);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h+(1)>>0;$s=7;continue;case 8:g=g+(1)>>0;$s=5;continue;case 6:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O};}$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;};P.ptr.prototype.dim=function(){var $ptr,a;a=this;return 5;};P.prototype.dim=function(){return this.$val.dim();};P.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;a.es[2][2]=1;a.es[3][3]=1;};P.prototype.initialize=function(){return this.$val.initialize();};P.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};P.prototype.Element=function(a,b){return this.$val.Element(a,b);};P.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Concat=function(a){return this.$val.Concat(a);};P.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],P);c=this;if(!c.initialized){c.initialize();}b[0]=new P.ptr(false,BI.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}P.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.Add=function(a){return this.$val.Add(a);};P.ptr.prototype.Scale=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;e=this;if(!e.initialized){e.initialize();}f=0;while(true){if(!(f<5)){break;}(h=e.es[0],((f<0||f>=h.length)?$throwRuntimeError("index out of range"):h[f]=(g=e.es[0],((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]))*(a)));(j=e.es[1],((f<0||f>=j.length)?$throwRuntimeError("index out of range"):j[f]=(i=e.es[1],((f<0||f>=i.length)?$throwRuntimeError("index out of range"):i[f]))*(b)));(l=e.es[2],((f<0||f>=l.length)?$throwRuntimeError("index out of range"):l[f]=(k=e.es[2],((f<0||f>=k.length)?$throwRuntimeError("index out of range"):k[f]))*(c)));(n=e.es[3],((f<0||f>=n.length)?$throwRuntimeError("index out of range"):n[f]=(m=e.es[3],((f<0||f>=m.length)?$throwRuntimeError("index out of range"):m[f]))*(d)));f=f+(1)>>0;}};P.prototype.Scale=function(a,b,c,d){return this.$val.Scale(a,b,c,d);};P.ptr.prototype.Translate=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;if(!e.initialized){e.initialize();}e.es[0][4]=e.es[0][4]+(a);e.es[1][4]=e.es[1][4]+(b);e.es[2][4]=e.es[2][4]+(c);e.es[3][4]=e.es[3][4]+(d);};P.prototype.Translate=function(a,b,c,d){return this.$val.Translate(a,b,c,d);};P.ptr.prototype.RotateHue=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=A.Sincos(a);d=c[0];e=c[1];f=e+(1-e)/3;g=0.3333333333333333*(1-e)-A.Sqrt(0.3333333333333333)*d;h=0.3333333333333333*(1-e)+A.Sqrt(0.3333333333333333)*d;$r=b.Concat(new P.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[f,g,h,0,0]),$toNativeArray($kindFloat64,[h,f,g,0,0]),$toNativeArray($kindFloat64,[g,h,f,0,0]),$toNativeArray($kindFloat64,[0,0,0,1,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:P.ptr.prototype.RotateHue};}$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.RotateHue=function(a){return this.$val.RotateHue(a);};P.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};P.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};V.ptr.prototype.dim=function(){var $ptr,a;a=this;return 3;};V.prototype.dim=function(){return this.$val.dim();};V.ptr.prototype.initialize=function(){var $ptr,a;a=this;a.initialized=true;a.es[0][0]=1;a.es[1][1]=1;};V.prototype.initialize=function(){return this.$val.initialize();};V.ptr.prototype.Element=function(a,b){var $ptr,a,b,c,d,e;c=this;if(!c.initialized){if(a===b){return 1;}return 0;}return(d=(e=c.es,((a<0||a>=e.length)?$throwRuntimeError("index out of range"):e[a])),((b<0||b>=d.length)?$throwRuntimeError("index out of range"):d[b]));};V.prototype.Element=function(a,b){return this.$val.Element(a,b);};V.ptr.prototype.Concat=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=O(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Concat=function(a){return this.$val.Concat(a);};V.ptr.prototype.Add=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:a=[a];b=[b];a[0]=$clone(a[0],V);c=this;if(!c.initialized){c.initialize();}b[0]=new V.ptr(false,BK.zero());$r=N(a[0],c,b[0]);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}V.copy(c,b[0]);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Add};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};V.prototype.Add=function(a){return this.$val.Add(a);};V.ptr.prototype.Scale=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this;if(!c.initialized){c.initialize();}d=0;while(true){if(!(d<3)){break;}(f=c.es[0],((d<0||d>=f.length)?$throwRuntimeError("index out of range"):f[d]=(e=c.es[0],((d<0||d>=e.length)?$throwRuntimeError("index out of range"):e[d]))*(a)));(h=c.es[1],((d<0||d>=h.length)?$throwRuntimeError("index out of range"):h[d]=(g=c.es[1],((d<0||d>=g.length)?$throwRuntimeError("index out of range"):g[d]))*(b)));d=d+(1)>>0;}};V.prototype.Scale=function(a,b){return this.$val.Scale(a,b);};V.ptr.prototype.Translate=function(a,b){var $ptr,a,b,c;c=this;if(!c.initialized){c.initialize();}c.es[0][2]=c.es[0][2]+(a);c.es[1][2]=c.es[1][2]+(b);};V.prototype.Translate=function(a,b){return this.$val.Translate(a,b);};V.ptr.prototype.Rotate=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=A.Sincos(a);d=c[0];e=c[1];$r=b.Concat(new V.ptr(true,$toNativeArray($kindArray,[$toNativeArray($kindFloat64,[e,-d,0]),$toNativeArray($kindFloat64,[d,e,0])])));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:V.ptr.prototype.Rotate};}$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;};V.prototype.Rotate=function(a){return this.$val.Rotate(a);};V.ptr.prototype.SetElement=function(a,b,c){var $ptr,a,b,c,d,e,f;d=this;if(!d.initialized){d.initialize();}(e=(f=d.es,((a<0||a>=f.length)?$throwRuntimeError("index out of range"):f[a])),((b<0||b>=e.length)?$throwRuntimeError("index out of range"):e[b]=c));};V.prototype.SetElement=function(a,b,c){return this.$val.SetElement(a,b,c);};AA=function(a,b){var $ptr,a,b,c;c=b;if(c===0){return a.Nearest;}else if(c===1){return a.Linear;}$panic(new $String("not reach"));};AB=function(a){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];$r=B.ExecOnUIThread((function(a){return function $b(){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=a[0](AP);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AB};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AC=function(a,b,c){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:d=new AD.ptr(BL.nil,BL.nil,0);e=d.setSize(a,b,c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[BM.nil,f];case 3:return[d,$ifaceNil];}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.$s=$s;$f.$r=$r;return $f;};AD.ptr.prototype.preUpdate=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.screen.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.preUpdate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AD.prototype.preUpdate=function(){return this.$val.preUpdate();};AD.ptr.prototype.postUpdate=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;b=a.defaultRenderTarget.Clear();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return c;case 3:d=a.screenScale;e=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);e.GeoM.Scale(d,d);f=a.defaultRenderTarget.DrawImage(a.screen,e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return g;case 6:return $ifaceNil;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.postUpdate};}$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;};AD.prototype.postUpdate=function(){return this.$val.postUpdate();};AD.ptr.prototype.setSize=function(a,b,c){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];d[0]=this;if(!(d[0].defaultRenderTarget===BL.nil)){$s=1;continue;}$s=2;continue;case 1:e=d[0].defaultRenderTarget.Dispose();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:if(!(d[0].screen===BL.nil)){$s=4;continue;}$s=5;continue;case 4:f=d[0].screen.Dispose();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 5:g=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(h){var $ptr,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;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:i=D.NewZeroFramebuffer(h,$imul(a[0],c[0]),$imul(b[0],c[0]));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}l=D.NewTexture(h,a[0],b[0],h.Nearest);m=l[0];k=l[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}o=D.NewFramebufferFromTexture(h,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){return;}q=new AE.ptr(p,m,BQ.nil,0,0);d[0].defaultRenderTarget=new AE.ptr(j,BP.nil,BQ.nil,0,0);d[0].screen=q;d[0].screenScale=c[0];$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$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;};})(a,b,c,d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return g;}return;}if($f===undefined){$f={$blk:AD.ptr.prototype.setSize};}$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;};AD.prototype.setSize=function(a,b,c){return this.$val.setSize(a,b,c);};AE.ptr.prototype.Size=function(){var $ptr,a,b,c,d,e,f;a=0;b=0;c=this;if(c.width===0){d=c.framebuffer.Size();c.width=d[0];c.height=d[1];}e=c.width;f=c.height;a=e;b=f;return[a,b];};AE.prototype.Size=function(){return this.$val.Size();};AE.ptr.prototype.Clear=function(){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=$ifaceNil;b=this;if(b.isDisposed()){a=E.New("image is already disposed");return a;}d=b.Fill((c=H.Transparent,new c.constructor.elem(c)));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;$s=2;case 2:return a;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Clear};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Clear=function(){return this.$val.Clear();};AE.ptr.prototype.Fill=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:a=[a];b=[b];c=[c];b[0]=$ifaceNil;c[0]=this;if(c[0].isDisposed()){b[0]=E.New("image is already disposed");return b[0];}c[0].pixels=BQ.nil;$r=AB((function(a,b,c){return function $b(d){var $ptr,d,e,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=c[0].framebuffer.Fill(d,a[0]);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b[0]=e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Fill};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Fill=function(a){return this.$val.Fill(a);};AE.ptr.prototype.DrawImage=function(a,b){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];c[0]=$ifaceNil;d[0]=this;if(d[0].isDisposed()){c[0]=E.New("image is already disposed");return c[0];}if(d[0]===a[0]){c[0]=E.New("Image.DrawImage: image should be different from the receiver");return c[0];}d[0].pixels=BQ.nil;if(b[0]===BR.nil){b[0]=new AF.ptr($ifaceNil,new V.ptr(false,BK.zero()),new P.ptr(false,BI.zero()),BN.nil);}f=b[0].ImageParts;if($interfaceIsEqual(f,$ifaceNil)){g=b[0].Parts;if(!(g===BN.nil)){f=$subslice(new AK(g.$array),g.$offset,g.$offset+g.$length);}else{h=a[0].Size();i=h[0];j=h[1];f=new AL.ptr(i,j);}}k=a[0].Size();l=k[0];m=k[1];e[0]=new AO.ptr(f,l,m);$r=AB((function(a,b,c,d,e){return function $b(n){var $ptr,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=d[0].framebuffer.DrawTexture(n,a[0].texture,e[0],b[0].GeoM,b[0].ColorM);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c[0]=o;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return c[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.DrawImage};}$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;};AE.prototype.DrawImage=function(a,b){return this.$val.DrawImage(a,b);};AE.ptr.prototype.Bounds=function(){var $ptr,a,b,c,d;a=this;b=a.Size();c=b[0];d=b[1];return G.Rect(0,0,c,d);};AE.prototype.Bounds=function(){return this.$val.Bounds();};AE.ptr.prototype.ColorModel=function(){var $ptr,a;a=this;return H.RGBAModel;};AE.prototype.ColorModel=function(){return this.$val.ColorModel();};AE.ptr.prototype.At=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].isDisposed()){return(d=H.Transparent,new d.constructor.elem(d));}if(c[0].pixels===BQ.nil){$s=1;continue;}$s=2;continue;case 1:$r=AB((function(c){return function $b(e){var $ptr,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;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=$ifaceNil;h=c[0].framebuffer.Pixels(e);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;c[0].pixels=g[0];f=g[1];if(!($interfaceIsEqual(f,$ifaceNil))){$panic(f);}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(c));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:e=c[0].Size();f=e[0];f=D.NextPowerOf2Int(f);g=($imul(4,a))+($imul(($imul(4,b)),f))>>0;h=(i=c[0].pixels,((g<0||g>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+g]));j=(k=c[0].pixels,l=g+1>>0,((l<0||l>=k.$length)?$throwRuntimeError("index out of range"):k.$array[k.$offset+l]));m=(n=c[0].pixels,o=g+2>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]));p=(q=c[0].pixels,r=g+3>>0,((r<0||r>=q.$length)?$throwRuntimeError("index out of range"):q.$array[q.$offset+r]));s=h;t=j;u=m;v=p;return(w=new H.RGBA.ptr(s,t,u,v),new w.constructor.elem(w));}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.At};}$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.$s=$s;$f.$r=$r;return $f;};AE.prototype.At=function(a,b){return this.$val.At(a,b);};AE.ptr.prototype.Dispose=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];a[0]=this;if(a[0].isDisposed()){return E.New("image is already disposed");}$r=AB((function(a){return function(b){var $ptr,b;a[0].framebuffer.Dispose(b);a[0].framebuffer=BO.nil;a[0].texture.Dispose(b);a[0].texture=BP.nil;};})(a));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a[0].pixels=BQ.nil;I.SetFinalizer(a[0],$ifaceNil);return $ifaceNil;}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.Dispose};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AE.prototype.Dispose=function(){return this.$val.Dispose();};AE.ptr.prototype.isDisposed=function(){var $ptr,a;a=this;return a.texture===BP.nil&&a.framebuffer===BO.nil;};AE.prototype.isDisposed=function(){return this.$val.isDisposed();};AE.ptr.prototype.ReplacePixels=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:a=[a];b=[b];c=[c];c[0]=this;if(c[0].isDisposed()){return E.New("image is already disposed");}c[0].pixels=BQ.nil;d=c[0].Size();e=d[0];f=d[1];g=$imul(($imul(4,e)),f);if(!((a[0].$length===g))){$s=1;continue;}$s=2;continue;case 1:h=F.Sprintf("p's length must be %d",new BS([new $Int(g)]));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=E.New(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=5;case 5:return i;case 2:b[0]=$ifaceNil;$r=AB((function(a,b,c){return function(j){var $ptr,j;b[0]=c[0].texture.ReplacePixels(j,a[0]);};})(a,b,c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return b[0];}return;}if($f===undefined){$f={$blk:AE.ptr.prototype.ReplacePixels};}$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;};AE.prototype.ReplacePixels=function(a){return this.$val.ReplacePixels(a);};AH=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=[c];d=[d];d[0]=BL.nil;c[0]=$ifaceNil;$r=AB((function(a,b,c,d){return function $b(e){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:f=BP.nil;g=BO.nil;i=D.NewTextureFromImage(e,a[0],AA(e,b[0]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;f=h[0];c[0]=h[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}k=D.NewFramebufferFromTexture(e,f);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;g=j[0];c[0]=j[1];if(!($interfaceIsEqual(c[0],$ifaceNil))){return;}d[0]=new AE.ptr(g,f,BQ.nil,0,0);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$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;};})(a,b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(c[0],$ifaceNil))){return[BL.nil,c[0]];}I.SetFinalizer(d[0],new BT($methodExpr(BL,"Dispose")));return[d[0],$ifaceNil];}return;}if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromImage=AH;AK.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AK).prototype.Len=function(){return this.$get().Len();};AK.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Dst;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Dst=function(a){return this.$get().Dst(a);};AK.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b=0;c=0;d=0;e=0;f=this;g=((a<0||a>=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+a]).Src;h=g.Min.X;i=g.Min.Y;j=g.Max.X;k=g.Max.Y;b=h;c=i;d=j;e=k;return[b,c,d,e];};$ptrType(AK).prototype.Src=function(a){return this.$get().Src(a);};AL.ptr.prototype.Len=function(){var $ptr,a;a=this;return 1;};AL.prototype.Len=function(){return this.$val.Len();};AL.ptr.prototype.Dst=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Dst=function(a){return this.$val.Dst(a);};AL.ptr.prototype.Src=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;e=0;f=this;g=0;h=0;i=f.width;j=f.height;b=g;c=h;d=i;e=j;return[b,c,d,e];};AL.prototype.Src=function(a){return this.$val.Src(a);};AM=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AN=function(a,b){var $ptr,a,b,c;return(c=($imul(32767,a))/D.NextPowerOf2Int(b),(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));};AO.ptr.prototype.Len=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.parts.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Len};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AO.prototype.Len=function(){return this.$val.Len();};AO.ptr.prototype.Vertex=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=0;d=0;e=0;f=this;h=f.parts.Dst(a);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;b=g[0];c=g[1];d=g[2];e=g[3];$s=2;case 2:return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Vertex};}$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;};AO.prototype.Vertex=function(a){return this.$val.Vertex(a);};AO.ptr.prototype.Texture=function(a){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:b=0;c=0;d=0;e=0;f=this;h=f.parts.Src(a);$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];k=g[2];l=g[3];m=f.width;n=f.height;o=m;p=n;q=AM(i,o);r=AN(j,p);s=AM(k,o);t=AN(l,p);b=q;c=r;d=s;e=t;return[b,c,d,e];}return;}if($f===undefined){$f={$blk:AO.ptr.prototype.Texture};}$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;};AO.prototype.Texture=function(a){return this.$val.Texture(a);};AQ=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=B.Init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.ExecOnUIThread((function(){var $ptr;AP=C.NewContext();}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}J.Init();$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};BC=function(a,b,c,d,e){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,$deferred,$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;$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);BA.running=true;$deferred.push([(function(){var $ptr;BA.running=false;}),[]]);f=B.Start(b,c,d,e);g=f[0];h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}$deferred.push([B.Terminate,[]]);$r=B.ExecOnUIThread((function $b(){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=AP.Check();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;}));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=AC(b,c,g);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];h=i[1];if(!($interfaceIsEqual(h,$ifaceNil))){return h;}l=0;m=B.Now();n=B.Now();case 3:if(0>0;if((an=(ao=new $Int64(ae.$high-n.$high,ae.$low-n.$low),new K.Duration(ao.$high,ao.$low)),(0>0)),$subslice(a,c,(c+d>>0)));return;}while(true){if(b>=(c+d>>0)){$copySlice($subslice(a,b,(b+d>>0)),$subslice(a,c,(c+d>>0)));return;}e=b-c>>0;$copySlice($subslice(a,b,(b+e>>0)),$subslice(a,c,(c+e>>0)));d=d-(e)>>0;b=b+(e)>>0;}};AC=function(a){var $ptr,a;return new Y.ptr($makeSlice(BN,a),$makeSlice(BY,a));};AD=function(){var $ptr,a,b,c,d,e,f;a=AC(286);b=a.codeBits;c=a.code;d=0;d=0;while(true){if(!(d<286)){break;}e=0;f=0;switch(0){default:if(d<144){e=d+48<<16>>>16;f=8;break;}else if(d<256){e=(d+400<<16>>>16)-144<<16>>>16;f=9;break;}else if(d<280){e=d-256<<16>>>16;f=7;break;}else{e=(d+192<<16>>>16)-280<<16>>>16;f=8;}}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=f);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(e,f));d=d+(1)<<16>>>16;}return a;};AE=function(){var $ptr,a,b,c,d;a=AC(30);b=a.codeBits;c=a.code;d=0;while(true){if(!(d<30)){break;}((d<0||d>=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+d]=5);((d<0||d>=c.$length)?$throwRuntimeError("index out of range"):c.$array[c.$offset+d]=AY(d,5));d=d+(1)<<16>>>16;}return a;};AK.prototype.Error=function(){var $ptr,a;a=this;return"flate: corrupt input before offset "+F.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(AK).prototype.Error=function(){return this.$get().Error();};AL.prototype.Error=function(){var $ptr,a;a=this.$val;return"flate: internal error: "+a;};$ptrType(AL).prototype.Error=function(){return new AL(this.$get()).Error();};AM.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=2;case 2:return"flate: read error at offset "+F.FormatInt(a.Offset,10)+": "+b;}return;}if($f===undefined){$f={$blk:AM.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};AM.prototype.Error=function(){return this.$val.Error();};AP.ptr.prototype.init=function(a){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;b=this;if(!((b.min===0))){AP.copy(b,new AP.ptr(0,CD.zero(),BM.nil,0));}c=CE.zero();d=0;e=0;f=d;g=e;h=a;i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);if(j===0){i++;continue;}if((f===0)||jg){g=j;}((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j]=(((j<0||j>=c.length)?$throwRuntimeError("index out of range"):c[j])+(1)>>0));i++;}if(g===0){return true;}k=0;l=CE.zero();m=f;while(true){if(!(m<=g)){break;}k=(n=(1),n<32?(k<>0;((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m]=k);k=k+(((m<0||m>=c.length)?$throwRuntimeError("index out of range"):c[m]))>>0;m=m+(1)>>0;}if(!((k===((o=(g>>>0),o<32?(1<>0)))&&!((k===1)&&(g===1))){return false;}b.min=f;if(g>9){q=(p=(((g>>>0)-9>>>0)),p<32?(1<>0;b.linkMask=((q-1>>0)>>>0);r=l[10]>>1>>0;b.links=$makeSlice(BM,(512-r>>0));s=(r>>>0);while(true){if(!(s<512)){break;}v=((t=s>>>8>>>0,((t<0||t>=AW.length)?$throwRuntimeError("index out of range"):AW[t]))>>0)|(((u=(s&255)>>>0,((u<0||u>=AW.length)?$throwRuntimeError("index out of range"):AW[u]))>>0)<<8>>0);v=(v>>$min((7),31))>>0;w=s-(r>>>0)>>>0;(x=b.chunks,((v<0||v>=x.length)?$throwRuntimeError("index out of range"):x[v]=((((w<<4>>>0)|10)>>>0)>>>0)));(y=b.links,((w<0||w>=y.$length)?$throwRuntimeError("index out of range"):y.$array[y.$offset+w]=$makeSlice(BL,q)));s=s+(1)>>>0;}}z=a;aa=0;while(true){if(!(aa=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]);if(ac===0){aa++;continue;}ad=((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]);((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac]=(((ac<0||ac>=l.length)?$throwRuntimeError("index out of range"):l[ac])+(1)>>0));ae=(((ab<<4>>0)|ac)>>>0);ah=((af=ad>>8>>0,((af<0||af>=AW.length)?$throwRuntimeError("index out of range"):AW[af]))>>0)|(((ag=ad&255,((ag<0||ag>=AW.length)?$throwRuntimeError("index out of range"):AW[ag]))>>0)<<8>>0);ah=(ah>>$min((((16-ac>>0)>>>0)),31))>>0;if(ac<=9){ai=ah;while(true){if(!(ai<512)){break;}(aj=b.chunks,((ai<0||ai>=aj.length)?$throwRuntimeError("index out of range"):aj[ai]=ae));ai=ai+(((ak=(ac>>>0),ak<32?(1<>0))>>0;}}else{al=ah&511;an=(am=b.chunks,((al<0||al>=am.length)?$throwRuntimeError("index out of range"):am[al]))>>>4>>>0;ap=(ao=b.links,((an<0||an>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+an]));ah=(ah>>$min((9),31))>>0;aq=ah;while(true){if(!(aq=ap.$length)?$throwRuntimeError("index out of range"):ap.$array[ap.$offset+aq]=ae);aq=aq+(((ar=((ac-9>>0)>>>0),ar<32?(1<>0))>>0;}}aa++;}return true;};AP.prototype.init=function(a){return this.$val.init(a);};AR.ptr.prototype.nextBlock=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;if(a.final$15){if(!((a.hw===a.hp))){a.flush($methodExpr(CF,"nextBlock"));return;}a.err=B.EOF;return;}case 1:if(!(a.nb<3)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return;case 5:$s=1;continue;case 2:a.final$15=((a.b&1)>>>0)===1;a.b=(c=(1),c<32?(a.b>>>c):0)>>>0;d=(a.b&3)>>>0;a.b=(e=(2),e<32?(a.b>>>e):0)>>>0;a.nb=a.nb-(3)>>>0;f=d;if(f===0){$s=6;continue;}if(f===1){$s=7;continue;}if(f===2){$s=8;continue;}$s=9;continue;case 6:$r=a.dataBlock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 7:a.hl=Q;a.hd=CG.nil;$r=a.huffmanBlock();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 8:g=a.readHuffman();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.err=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:$s=10;continue;case 15:a.hl=a.h1;a.hd=a.h2;$r=a.huffmanBlock();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:a.err=(h=a.roffset,new AK(h.$high,h.$low));case 10:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.nextBlock};}$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;};AR.prototype.nextBlock=function(){return this.$val.nextBlock();};AR.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.step(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.Read=function(a){return this.$val.Read(a);};AR.ptr.prototype.Close=function(){var $ptr,a;a=this;if($interfaceIsEqual(a.err,B.EOF)){return $ifaceNil;}return a.err;};AR.prototype.Close=function(){return this.$val.Close();};AR.ptr.prototype.readHuffman=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,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;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;case 1:if(!(a.nb<14)){$s=2;continue;}b=a.moreBits();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return c;case 5:$s=1;continue;case 2:d=(((a.b&31)>>>0)>>0)+257>>0;if(d>286){return(e=a.roffset,new AK(e.$high,e.$low));}a.b=(f=(5),f<32?(a.b>>>f):0)>>>0;g=(((a.b&31)>>>0)>>0)+1>>0;if(g>30){return(h=a.roffset,new AK(h.$high,h.$low));}a.b=(i=(5),i<32?(a.b>>>i):0)>>>0;j=(((a.b&15)>>>0)>>0)+4>>0;a.b=(k=(4),k<32?(a.b>>>k):0)>>>0;a.nb=a.nb-(14)>>>0;l=0;case 6:if(!(l=AS.length)?$throwRuntimeError("index out of range"):AS[l]),o.nilCheck,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p]=(((a.b&7)>>>0)>>0)));a.b=(q=(3),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(3)>>>0;l=l+(1)>>0;$s=6;continue;case 7:r=j;while(true){if(!(r<19)){break;}(s=a.codebits,t=((r<0||r>=AS.length)?$throwRuntimeError("index out of range"):AS[r]),s.nilCheck,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t]=0));r=r+(1)>>0;}if(!a.h1.init($subslice(new BO(a.codebits),0))){return(u=a.roffset,new AK(u.$high,u.$low));}v=0;w=d+g>>0;x=v;y=w;case 13:if(!(x=ad.length)?$throwRuntimeError("index out of range"):ad[x]=ab));x=x+(1)>>0;$s=13;continue;case 17:ae=0;af=0;ag=0;ah=ab;if(ah===16){ae=3;af=2;if(x===0){return(ai=a.roffset,new AK(ai.$high,ai.$low));}ag=(aj=a.bits,ak=x-1>>0,(aj.nilCheck,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak])));}else if(ah===17){ae=3;af=3;ag=0;}else if(ah===18){ae=11;af=7;ag=0;}else{return new AL("unexpected length code");}case 18:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(ao=(af),ao<32?(a.b>>>ao):0)>>>0;a.nb=a.nb-(af)>>>0;if((x+ae>>0)>y){return(ap=a.roffset,new AK(ap.$high,ap.$low));}aq=0;while(true){if(!(aq=ar.length)?$throwRuntimeError("index out of range"):ar[x]=ag));x=x+(1)>>0;aq=aq+(1)>>0;}$s=13;continue;case 14:if(!a.h1.init($subslice(new BO(a.bits),0,d))||!a.h2.init($subslice(new BO(a.bits),d,(d+g>>0)))){return(as=a.roffset,new AK(as.$high,as.$low));}return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.readHuffman};}$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.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;};AR.prototype.readHuffman=function(){return this.$val.readHuffman();};AR.ptr.prototype.huffmanBlock=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;case 1:c=a.huffSym(a.hl);$s=3;case 3: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))){a.err=e;return;}f=0;g=0;if(d<256){$s=4;continue;}if(d===256){$s=5;continue;}if(d<265){$s=6;continue;}if(d<269){$s=7;continue;}if(d<273){$s=8;continue;}if(d<277){$s=9;continue;}if(d<281){$s=10;continue;}if(d<285){$s=11;continue;}if(d<286){$s=12;continue;}$s=13;continue;case 4:(h=a.hist,i=a.hp,h.nilCheck,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));a.hp=a.hp+(1)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"huffmanBlock"));return;}$s=1;continue;$s=14;continue;case 5:a.step=$methodExpr(CF,"nextBlock");return;case 6:g=d-254>>0;f=0;$s=14;continue;case 7:g=($imul(d,2))-519>>0;f=1;$s=14;continue;case 8:g=($imul(d,4))-1057>>0;f=2;$s=14;continue;case 9:g=($imul(d,8))-2149>>0;f=3;$s=14;continue;case 10:g=($imul(d,16))-4365>>0;f=4;$s=14;continue;case 11:g=($imul(d,32))-8861>>0;f=5;$s=14;continue;case 12:g=258;f=0;$s=14;continue;case 13:a.err=(j=a.roffset,new AK(j.$high,j.$low));return;case 14:if(f>0){$s=15;continue;}$s=16;continue;case 15:case 17:if(!(a.nb>>0)-1>>>0))>>>0)>>0))>>0;a.b=(m=(f),m<32?(a.b>>>m):0)>>>0;a.nb=a.nb-(f)>>>0;case 16:n=0;if(a.hd===CG.nil){$s=22;continue;}$s=23;continue;case 22:case 25:if(!(a.nb<5)){$s=26;continue;}o=a.moreBits();$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}e=o;if(!($interfaceIsEqual(e,$ifaceNil))){$s=28;continue;}$s=29;continue;case 28:a.err=e;return;case 29:$s=25;continue;case 26:n=((p=(((a.b&31)>>>0))<<3>>>0,((p<0||p>=AW.length)?$throwRuntimeError("index out of range"):AW[p]))>>0);a.b=(q=(5),q<32?(a.b>>>q):0)>>>0;a.nb=a.nb-(5)>>>0;$s=24;continue;case 23:s=a.huffSym(a.hd);$s=30;case 30:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;n=r[0];e=r[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:a.err=e;return;case 32:case 24:if(n<4){$s=33;continue;}if(n<30){$s=34;continue;}$s=35;continue;case 33:n=n+(1)>>0;$s=36;continue;case 34:t=((n-2>>0)>>>0)>>>1>>>0;v=(u=t,u<32?(((n&1))<>0;case 37:if(!(a.nb>>0)-1>>>0))>>>0)>>0));a.b=(y=(t),y<32?(a.b>>>y):0)>>>0;a.nb=a.nb-(t)>>>0;n=(((z=((t+1>>>0)),z<32?(1<>0)+1>>0)+v>>0;$s=36;continue;case 35:a.err=(aa=a.roffset,new AK(aa.$high,aa.$low));return;case 36:if(n>32768){a.err=new AL("bad history distance");return;}if(!a.hfull&&n>a.hp){a.err=(ab=a.roffset,new AK(ab.$high,ab.$low));return;}ac=g;ad=n;a.copyLen=ac;a.copyDist=ad;if(a.copyHist()){return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffmanBlock};}$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;};AR.prototype.huffmanBlock=function(){return this.$val.huffmanBlock();};AR.ptr.prototype.copyHist=function(){var $ptr,a,b,c,d,e;a=this;b=a.hp-a.copyDist>>0;if(b<0){b=b+(32768)>>0;}while(true){if(!(a.copyLen>0)){break;}c=a.copyLen;d=32768-a.hp>>0;if(c>d){c=d;}e=32768-b>>0;if(c>e){c=e;}G(new BN(a.hist),a.hp,b,c);b=b+(c)>>0;a.hp=a.hp+(c)>>0;a.copyLen=a.copyLen-(c)>>0;if(a.hp===32768){a.flush($methodExpr(CF,"copyHuff"));return true;}if(b===32768){b=0;}}return false;};AR.prototype.copyHist=function(){return this.$val.copyHist();};AR.ptr.prototype.copyHuff=function(){var $ptr,a,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.copyHist()){return;}$r=a.huffmanBlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyHuff};}$f.$ptr=$ptr;$f.a=a;$f.$s=$s;$f.$r=$r;return $f;};AR.prototype.copyHuff=function(){return this.$val.copyHuff();};AR.ptr.prototype.dataBlock=function(){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:a=this;a.nb=0;a.b=0;c=B.ReadFull(a.r,$subslice(new BN(a.buf),0,4));$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];a.roffset=(f=a.roffset,g=new $Int64(0,d),new $Int64(f.$high+g.$high,f.$low+g.$low));if(!($interfaceIsEqual(e,$ifaceNil))){a.err=new AM.ptr(a.roffset,e);return;}h=(a.buf[0]>>0)|((a.buf[1]>>0)<<8>>0);i=(a.buf[2]>>0)|((a.buf[3]>>0)<<8>>0);if(!(((i<<16>>>16)===((~h>>0)<<16>>>16)))){a.err=(j=a.roffset,new AK(j.$high,j.$low));return;}if(h===0){a.flush($methodExpr(CF,"nextBlock"));return;}a.copyLen=h;$r=a.copyData();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.dataBlock};}$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;};AR.prototype.dataBlock=function(){return this.$val.dataBlock();};AR.ptr.prototype.copyData=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.copyLen;case 1:if(!(b>0)){$s=2;continue;}c=32768-a.hp>>0;if(c>b){c=b;}e=B.ReadFull(a.r,$subslice(new BN(a.hist),a.hp,(a.hp+c>>0)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];f=d[1];a.roffset=(g=a.roffset,h=new $Int64(0,c),new $Int64(g.$high+h.$high,g.$low+h.$low));if(!($interfaceIsEqual(f,$ifaceNil))){a.err=new AM.ptr(a.roffset,f);return;}b=b-(c)>>0;a.hp=a.hp+(c)>>0;if(a.hp===32768){a.copyLen=b;a.flush($methodExpr(CF,"copyData"));return;}$s=1;continue;case 2:a.step=$methodExpr(CF,"nextBlock");$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.copyData};}$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;};AR.prototype.copyData=function(){return this.$val.copyData();};AR.ptr.prototype.setDict=function(a){var $ptr,a,b;b=this;if(a.$length>32768){a=$subslice(a,(a.$length-32768>>0));}b.hp=$copySlice(new BN(b.hist),a);if(b.hp===32768){b.hp=0;b.hfull=true;}b.hw=b.hp;};AR.prototype.setDict=function(a){return this.$val.setDict(a);};AR.ptr.prototype.moreBits=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;c=a.r.ReadByte();$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))){if($interfaceIsEqual(e,B.EOF)){e=B.ErrUnexpectedEOF;}return e;}a.roffset=(f=a.roffset,g=new $Int64(0,1),new $Int64(f.$high+g.$high,f.$low+g.$low));a.b=(a.b|(((h=a.nb,h<32?((d>>>0)<>>0)))>>>0;a.nb=a.nb+(8)>>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.moreBits};}$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;};AR.prototype.moreBits=function(){return this.$val.moreBits();};AR.ptr.prototype.huffSym=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:b=this;c=(a.min>>>0);case 1:case 3:if(!(b.nb>>0,((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g]));c=(((h&15)>>>0)>>>0);if(c>9){h=(i=(j=a.links,k=h>>>4>>>0,((k<0||k>=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k])),l=(((b.b>>>9>>>0))&a.linkMask)>>>0,((l<0||l>=i.$length)?$throwRuntimeError("index out of range"):i.$array[i.$offset+l]));c=(((h&15)>>>0)>>>0);}if(c<=b.nb){if(c===0){b.err=(m=b.roffset,new AK(m.$high,m.$low));return[0,b.err];}b.b=(n=(c),n<32?(b.b>>>n):0)>>>0;b.nb=b.nb-(c)>>>0;return[((h>>>4>>>0)>>0),$ifaceNil];}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:AR.ptr.prototype.huffSym};}$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;};AR.prototype.huffSym=function(a){return this.$val.huffSym(a);};AR.ptr.prototype.flush=function(a){var $ptr,a,b,c,d;b=this;b.toRead=$subslice(new BN(b.hist),b.hw,b.hp);b.woffset=(c=b.woffset,d=new $Int64(0,(b.hp-b.hw>>0)),new $Int64(c.$high+d.$high,c.$low+d.$low));b.hw=b.hp;if(b.hp===32768){b.hp=0;b.hw=0;b.hfull=true;}b.step=a;};AR.prototype.flush=function(a){return this.$val.flush(a);};AT=function(a){var $ptr,a,b,c,d;b=$assertType(a,AQ,true);c=b[0];d=b[1];if(d){return c;}return E.NewReader(a);};AR.ptr.prototype.Reset=function(a,b){var $ptr,a,b,c;c=this;AR.copy(c,new AR.ptr(AT(a),new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),c.bits,c.codebits,c.hist,0,0,false,CN.zero(),$methodExpr(CF,"nextBlock"),false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0));if(!(b===BN.nil)){c.setDict(b);}return $ifaceNil;};AR.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};AU=function(a){var $ptr,a,b;b=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);b.bits=CH.zero();b.codebits=CJ.zero();b.r=AT(a);b.hist=CL.zero();b.step=$methodExpr(CF,"nextBlock");return b;};$pkg.NewReader=AU;AV=function(a,b){var $ptr,a,b,c;c=new AR.ptr($ifaceNil,new $Int64(0,0),new $Int64(0,0),0,0,new AP.ptr(0,CD.zero(),BM.nil,0),new AP.ptr(0,CD.zero(),BM.nil,0),CI.nil,CK.nil,CM.nil,0,0,false,CN.zero(),$throwNilPointerError,false,$ifaceNil,BN.nil,CG.nil,CG.nil,0,0);c.r=AT(a);c.hist=CL.zero();c.bits=CH.zero();c.codebits=CJ.zero();c.step=$methodExpr(CF,"nextBlock");c.setDict(b);return c;};$pkg.NewReaderDict=AV;AX=function(a){var $ptr,a,b,c;return(((b=a>>>8<<16>>>16,((b<0||b>=AW.length)?$throwRuntimeError("index out of range"):AW[b]))<<16>>>16)|(((c=(a&255)>>>0,((c<0||c>=AW.length)?$throwRuntimeError("index out of range"):AW[c]))<<16>>>16)<<8<<16>>>16))>>>0;};AY=function(a,b){var $ptr,a,b,c;return AX((c=(16-b<<24>>>24),c<32?(a<>>16);};BX.methods=[{prop:"bitLength",name:"bitLength",pkg:"compress/flate",typ:$funcType([BW],[$Int64],false)},{prop:"bitCounts",name:"bitCounts",pkg:"compress/flate",typ:$funcType([CC,$Int32],[BW],false)},{prop:"assignEncodingAndSize",name:"assignEncodingAndSize",pkg:"compress/flate",typ:$funcType([BW,CC],[],false)},{prop:"generate",name:"generate",pkg:"compress/flate",typ:$funcType([BW,$Int32],[],false)}];AK.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AL.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];CG.methods=[{prop:"init",name:"init",pkg:"compress/flate",typ:$funcType([BO],[$Bool],false)}];CF.methods=[{prop:"nextBlock",name:"nextBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"readHuffman",name:"readHuffman",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffmanBlock",name:"huffmanBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyHist",name:"copyHist",pkg:"compress/flate",typ:$funcType([],[$Bool],false)},{prop:"copyHuff",name:"copyHuff",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"dataBlock",name:"dataBlock",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"copyData",name:"copyData",pkg:"compress/flate",typ:$funcType([],[],false)},{prop:"setDict",name:"setDict",pkg:"compress/flate",typ:$funcType([BN],[],false)},{prop:"moreBits",name:"moreBits",pkg:"compress/flate",typ:$funcType([],[$error],false)},{prop:"huffSym",name:"huffSym",pkg:"compress/flate",typ:$funcType([CG],[$Int,$error],false)},{prop:"flush",name:"flush",pkg:"compress/flate",typ:$funcType([CT],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}];Y.init([{prop:"codeBits",name:"codeBits",pkg:"compress/flate",typ:BN,tag:""},{prop:"code",name:"code",pkg:"compress/flate",typ:BY,tag:""}]);Z.init([{prop:"literal",name:"literal",pkg:"compress/flate",typ:$Uint16,tag:""},{prop:"freq",name:"freq",pkg:"compress/flate",typ:$Int32,tag:""}]);AM.init([{prop:"Offset",name:"Offset",pkg:"",typ:$Int64,tag:""},{prop:"Err",name:"Err",pkg:"",typ:$error,tag:""}]);AO.init([{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([B.Reader,BN],[$error],false)}]);AP.init([{prop:"min",name:"min",pkg:"compress/flate",typ:$Int,tag:""},{prop:"chunks",name:"chunks",pkg:"compress/flate",typ:CD,tag:""},{prop:"links",name:"links",pkg:"compress/flate",typ:BM,tag:""},{prop:"linkMask",name:"linkMask",pkg:"compress/flate",typ:$Uint32,tag:""}]);AQ.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BN],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);AR.init([{prop:"r",name:"r",pkg:"compress/flate",typ:AQ,tag:""},{prop:"roffset",name:"roffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"woffset",name:"woffset",pkg:"compress/flate",typ:$Int64,tag:""},{prop:"b",name:"b",pkg:"compress/flate",typ:$Uint32,tag:""},{prop:"nb",name:"nb",pkg:"compress/flate",typ:$Uint,tag:""},{prop:"h1",name:"h1",pkg:"compress/flate",typ:AP,tag:""},{prop:"h2",name:"h2",pkg:"compress/flate",typ:AP,tag:""},{prop:"bits",name:"bits",pkg:"compress/flate",typ:CI,tag:""},{prop:"codebits",name:"codebits",pkg:"compress/flate",typ:CK,tag:""},{prop:"hist",name:"hist",pkg:"compress/flate",typ:CM,tag:""},{prop:"hp",name:"hp",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hw",name:"hw",pkg:"compress/flate",typ:$Int,tag:""},{prop:"hfull",name:"hfull",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"buf",name:"buf",pkg:"compress/flate",typ:CN,tag:""},{prop:"step",name:"step",pkg:"compress/flate",typ:CT,tag:""},{prop:"final$15",name:"final",pkg:"compress/flate",typ:$Bool,tag:""},{prop:"err",name:"err",pkg:"compress/flate",typ:$error,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/flate",typ:BN,tag:""},{prop:"hl",name:"hl",pkg:"compress/flate",typ:CG,tag:""},{prop:"hd",name:"hd",pkg:"compress/flate",typ:CG,tag:""},{prop:"copyLen",name:"copyLen",pkg:"compress/flate",typ:$Int,tag:""},{prop:"copyDist",name:"copyDist",pkg:"compress/flate",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=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=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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Q=new AP.ptr(7,$toNativeArray($kindUint32,[4103,1288,264,4488,4359,1800,776,3081,4231,1544,520,2569,8,2056,1032,3593,4167,1416,392,2313,4423,1928,904,3337,4295,1672,648,2825,136,2184,1160,3849,4135,1352,328,4552,4391,1864,840,3209,4263,1608,584,2697,72,2120,1096,3721,4199,1480,456,2441,4455,1992,968,3465,4327,1736,712,2953,200,2248,1224,3977,4119,1320,296,4520,4375,1832,808,3145,4247,1576,552,2633,40,2088,1064,3657,4183,1448,424,2377,4439,1960,936,3401,4311,1704,680,2889,168,2216,1192,3913,4151,1384,360,4584,4407,1896,872,3273,4279,1640,616,2761,104,2152,1128,3785,4215,1512,488,2505,4471,2024,1000,3529,4343,1768,744,3017,232,2280,1256,4041,4103,1304,280,4504,4359,1816,792,3113,4231,1560,536,2601,24,2072,1048,3625,4167,1432,408,2345,4423,1944,920,3369,4295,1688,664,2857,152,2200,1176,3881,4135,1368,344,4568,4391,1880,856,3241,4263,1624,600,2729,88,2136,1112,3753,4199,1496,472,2473,4455,2008,984,3497,4327,1752,728,2985,216,2264,1240,4009,4119,1336,312,4536,4375,1848,824,3177,4247,1592,568,2665,56,2104,1080,3689,4183,1464,440,2409,4439,1976,952,3433,4311,1720,696,2921,184,2232,1208,3945,4151,1400,376,4600,4407,1912,888,3305,4279,1656,632,2793,120,2168,1144,3817,4215,1528,504,2537,4471,2040,1016,3561,4343,1784,760,3049,248,2296,1272,4073,4103,1288,264,4488,4359,1800,776,3097,4231,1544,520,2585,8,2056,1032,3609,4167,1416,392,2329,4423,1928,904,3353,4295,1672,648,2841,136,2184,1160,3865,4135,1352,328,4552,4391,1864,840,3225,4263,1608,584,2713,72,2120,1096,3737,4199,1480,456,2457,4455,1992,968,3481,4327,1736,712,2969,200,2248,1224,3993,4119,1320,296,4520,4375,1832,808,3161,4247,1576,552,2649,40,2088,1064,3673,4183,1448,424,2393,4439,1960,936,3417,4311,1704,680,2905,168,2216,1192,3929,4151,1384,360,4584,4407,1896,872,3289,4279,1640,616,2777,104,2152,1128,3801,4215,1512,488,2521,4471,2024,1000,3545,4343,1768,744,3033,232,2280,1256,4057,4103,1304,280,4504,4359,1816,792,3129,4231,1560,536,2617,24,2072,1048,3641,4167,1432,408,2361,4423,1944,920,3385,4295,1688,664,2873,152,2200,1176,3897,4135,1368,344,4568,4391,1880,856,3257,4263,1624,600,2745,88,2136,1112,3769,4199,1496,472,2489,4455,2008,984,3513,4327,1752,728,3001,216,2264,1240,4025,4119,1336,312,4536,4375,1848,824,3193,4247,1592,568,2681,56,2104,1080,3705,4183,1464,440,2425,4439,1976,952,3449,4311,1720,696,2937,184,2232,1208,3961,4151,1400,376,4600,4407,1912,888,3321,4279,1656,632,2809,120,2168,1144,3833,4215,1528,504,2553,4471,2040,1016,3577,4343,1784,760,3065,248,2296,1272,4089]),BM.nil,0);AS=$toNativeArray($kindInt,[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);AW=$toNativeArray($kindUint8,[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255]);AF=AD();AG=AE();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash"]=(function(){var $pkg={},$init,A,C,E;A=$packages["io"];C=$pkg.Hash32=$newType(8,$kindInterface,"hash.Hash32","Hash32","hash",null);E=$sliceType($Uint8);C.init([{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([E],[E],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([E],[$Int,$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["hash/adler32"]=(function(){var $pkg={},$init,A,B,F,G,C,D,E;A=$packages["hash"];B=$pkg.digest=$newType(4,$kindUint32,"adler32.digest","digest","hash/adler32",null);F=$ptrType(B);G=$sliceType($Uint8);$ptrType(B).prototype.Reset=function(){var $ptr,a;a=this;a.$set(1);};C=function(){var $ptr,a;a=$newDataPointer(0,F);a.Reset();return a;};$pkg.New=C;$ptrType(B).prototype.Size=function(){var $ptr,a;a=this;return 4;};$ptrType(B).prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};D=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=(((a&65535)>>>0)>>>0);d=((a>>>16>>>0)>>>0);e=c;f=d;while(true){if(!(b.$length>0)){break;}g=G.nil;if(b.$length>5552){h=$subslice(b,0,5552);i=$subslice(b,5552);b=h;g=i;}j=b;k=0;while(true){if(!(k=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+k]);e=e+((l>>>0))>>>0;f=f+(e)>>>0;k++;}e=(m=e%(65521),m===m?m:$throwRuntimeError("integer divide by zero"));f=(n=f%(65521),n===n?n:$throwRuntimeError("integer divide by zero"));b=g;}return((((f<<16>>>0)|e)>>>0)>>>0);};$ptrType(B).prototype.Write=function(a){var $ptr,a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;d.$set(D(d.$get(),a));e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};$ptrType(B).prototype.Sum32=function(){var $ptr,a;a=this;return(a.$get()>>>0);};$ptrType(B).prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=(b.$get()>>>0);return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};E=function(a){var $ptr,a;return(D(1,a)>>>0);};$pkg.Checksum=E;F.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([G],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([G],[G],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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["compress/zlib"]=(function(){var $pkg={},$init,A,B,C,G,D,E,F,H,P,Q,U,J,K;A=$packages["bufio"];B=$packages["compress/flate"];C=$packages["errors"];G=$packages["fmt"];D=$packages["hash"];E=$packages["hash/adler32"];F=$packages["io"];H=$pkg.reader=$newType(0,$kindStruct,"zlib.reader","reader","compress/zlib",function(r_,decompressor_,digest_,err_,scratch_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.decompressor=$ifaceNil;this.digest=$ifaceNil;this.err=$ifaceNil;this.scratch=Q.zero();return;}this.r=r_;this.decompressor=decompressor_;this.digest=digest_;this.err=err_;this.scratch=scratch_;});P=$sliceType($Uint8);Q=$arrayType($Uint8,4);U=$ptrType(H);J=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=K(a,P.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=2;case 2:return b;}return;}if($f===undefined){$f={$blk:J};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewReader=J;K=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=new H.ptr($ifaceNil,$ifaceNil,$ifaceNil,$ifaceNil,Q.zero());d=c.Reset(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}return[c,$ifaceNil];}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;};$pkg.NewReaderDict=K;H.ptr.prototype.Read=function(a){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:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;return[b,c];}if(a.$length===0){g=0;h=$ifaceNil;b=g;c=h;return[b,c];}j=d.decompressor.Read(a);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;b=i[0];c=i[1];k=d.digest.Write($subslice(a,0,b));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(!((b===0))||!($interfaceIsEqual(c,F.EOF))){d.err=c;return[b,c];}m=F.ReadFull(d.r,$subslice(new P(d.scratch),0,4));$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:d.err=n;o=0;p=n;b=o;c=p;return[b,c];case 5:q=(((((((d.scratch[0]>>>0)<<24>>>0)|((d.scratch[1]>>>0)<<16>>>0))>>>0)|((d.scratch[2]>>>0)<<8>>>0))>>>0)|(d.scratch[3]>>>0))>>>0;r=d.digest.Sum32();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!((q===r))){$s=6;continue;}$s=7;continue;case 6:d.err=$pkg.ErrChecksum;s=0;t=d.err;b=s;c=t;return[b,c];case 7:return[b,c];}return;}if($f===undefined){$f={$blk:H.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.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;};H.prototype.Read=function(a){return this.$val.Read(a);};H.ptr.prototype.Close=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;if(!($interfaceIsEqual(a.err,$ifaceNil))){return a.err;}b=a.decompressor.Close();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a.err=b;return a.err;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.Reset=function(a,b){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:c=this;d=$assertType(a,B.Reader,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}h=F.ReadFull(c.r,$subslice(new P(c.scratch),0,2));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}j=(((c.scratch[0]>>>0)<<8>>>0)|(c.scratch[1]>>>0))>>>0;if((!((((c.scratch[0]&15)>>>0)===8)))||(!(((k=j%31,k===k?k:$throwRuntimeError("integer divide by zero"))===0)))){return $pkg.ErrHeader;}l=!((((c.scratch[1]&32)>>>0)===0));if(l){$s=2;continue;}$s=3;continue;case 2:n=F.ReadFull(c.r,$subslice(new P(c.scratch),0,4));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;i=m[1];if(!($interfaceIsEqual(i,$ifaceNil))){return i;}o=(((((((c.scratch[0]>>>0)<<24>>>0)|((c.scratch[1]>>>0)<<16>>>0))>>>0)|((c.scratch[2]>>>0)<<8>>>0))>>>0)|(c.scratch[3]>>>0))>>>0;if(!((o===E.Checksum(b)))){return $pkg.ErrDictionary;}case 3:if($interfaceIsEqual(c.decompressor,$ifaceNil)){$s=5;continue;}$s=6;continue;case 5:if(l){c.decompressor=B.NewReaderDict(c.r,b);}else{c.decompressor=B.NewReader(c.r);}$s=7;continue;case 6:p=$assertType(c.decompressor,B.Resetter).Reset(c.r,b);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 7:c.digest=E.New();return $ifaceNil;}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Reset};}$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;};H.prototype.Reset=function(a,b){return this.$val.Reset(a,b);};U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([F.Reader,P],[$error],false)}];H.init([{prop:"r",name:"r",pkg:"compress/zlib",typ:B.Reader,tag:""},{prop:"decompressor",name:"decompressor",pkg:"compress/zlib",typ:F.ReadCloser,tag:""},{prop:"digest",name:"digest",pkg:"compress/zlib",typ:D.Hash32,tag:""},{prop:"err",name:"err",pkg:"compress/zlib",typ:$error,tag:""},{prop:"scratch",name:"scratch",pkg:"compress/zlib",typ:Q,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=G.$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=E.$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;}$pkg.ErrChecksum=C.New("zlib: invalid checksum");$pkg.ErrDictionary=C.New("zlib: invalid dictionary");$pkg.ErrHeader=C.New("zlib: invalid header");}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,G,Y,U;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian","bigEndian","encoding/binary",function(){this.$val=this;if(arguments.length===0){return;}});Y=$sliceType($Uint8);G.ptr.prototype.Uint16=function(a){var $ptr,a;return(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):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;return(((((((3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?$throwRuntimeError("index out of range"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):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;return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?$throwRuntimeError("index out of range"):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"):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"):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"):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"):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"):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"):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;(0>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?$throwRuntimeError("index out of range"):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?$throwRuntimeError("index out of range"):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();};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)}];G.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.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["hash/crc32"]=(function(){var $pkg={},$init,A,B,C,G,M,V,W,X,Y,Z,AA,D,H,I,K,L,N,O,P,Q,R,U;A=$packages["hash"];B=$packages["sync"];C=$pkg.Table=$newType(1024,$kindArray,"crc32.Table","Table","hash/crc32",null);G=$pkg.slicing8Table=$newType(8192,$kindArray,"crc32.slicing8Table","slicing8Table","hash/crc32",null);M=$pkg.digest=$newType(0,$kindStruct,"crc32.digest","digest","hash/crc32",function(crc_,tab_){this.$val=this;if(arguments.length===0){this.crc=0;this.tab=V.nil;return;}this.crc=crc_;this.tab=tab_;});V=$ptrType(C);W=$ptrType(G);X=$arrayType($Uint32,256);Y=$arrayType(C,8);Z=$sliceType($Uint8);AA=$ptrType(M);K=function(a){var $ptr,a,b,c,d,e,f;b=X.zero();c=0;while(true){if(!(c<256)){break;}d=(c>>>0);e=0;while(true){if(!(e<8)){break;}if(((d&1)>>>0)===1){d=(((d>>>1>>>0))^a)>>>0;}else{d=(f=(1),f<32?(d>>>f):0)>>>0;}e=e+(1)>>0;}b.nilCheck,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]=d);c=c+(1)>>0;}return b;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=Y.zero();C.copy((b.nilCheck,b[0]),K(a));c=0;while(true){if(!(c<256)){break;}e=(d=(b.nilCheck,b[0]),((c<0||c>=d.length)?$throwRuntimeError("index out of range"):d[c]));f=1;while(true){if(!(f<8)){break;}e=((g=(b.nilCheck,b[0]),h=(e&255)>>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]))^((e>>>8>>>0)))>>>0;(i=(b.nilCheck,((f<0||f>=b.length)?$throwRuntimeError("index out of range"):b[f])),((c<0||c>=i.length)?$throwRuntimeError("index out of range"):i[c]=e));f=f+(1)>>0;}c=c+(1)>>0;}return b;};N=function(a){var $ptr,a;return new M.ptr(0,a);};$pkg.New=N;O=function(){var $ptr;return N($pkg.IEEETable);};$pkg.NewIEEE=O;M.ptr.prototype.Size=function(){var $ptr,a;a=this;return 4;};M.prototype.Size=function(){return this.$val.Size();};M.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 1;};M.prototype.BlockSize=function(){return this.$val.BlockSize();};M.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.crc=0;};M.prototype.Reset=function(){return this.$val.Reset();};P=function(a,b,c){var $ptr,a,b,c,d,e,f,g;a=~a>>>0;d=c;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);a=((g=((a<<24>>>24)^f)<<24>>>24,(b.nilCheck,((g<0||g>=b.length)?$throwRuntimeError("index out of range"):b[g])))^((a>>>8>>>0)))>>>0;e++;}return~a>>>0;};Q=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;a=~a>>>0;while(true){if(!(c.$length>8)){break;}a=(a^(((((((((0>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+0])>>>0)|(((1>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+3])>>>0)<<24>>>0))>>>0)))>>>0;a=((((((((((((((d=(b.nilCheck,b[0]),e=(7>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+7]),((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]))^(f=(b.nilCheck,b[1]),g=(6>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+6]),((g<0||g>=f.length)?$throwRuntimeError("index out of range"):f[g])))>>>0)^(h=(b.nilCheck,b[2]),i=(5>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+5]),((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i])))>>>0)^(j=(b.nilCheck,b[3]),k=(4>=c.$length?$throwRuntimeError("index out of range"):c.$array[c.$offset+4]),((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k])))>>>0)^(l=(b.nilCheck,b[4]),m=a>>>24>>>0,((m<0||m>=l.length)?$throwRuntimeError("index out of range"):l[m])))>>>0)^(n=(b.nilCheck,b[5]),o=(((a>>>16>>>0))&255)>>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o])))>>>0)^(p=(b.nilCheck,b[6]),q=(((a>>>8>>>0))&255)>>>0,((q<0||q>=p.length)?$throwRuntimeError("index out of range"):p[q])))>>>0)^(r=(b.nilCheck,b[7]),s=(a&255)>>>0,((s<0||s>=r.length)?$throwRuntimeError("index out of range"):r[s])))>>>0;c=$subslice(c,8);}a=~a>>>0;return P(a,(b.nilCheck,b[0]),c);};R=function(a,b,c){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:if($equal(b,D,C)){return U(a,c);}if($equal(b,$pkg.IEEETable,C)&&c.$length>=4096){$s=1;continue;}$s=2;continue;case 1:$r=I.Do((function(){var $ptr;H=L(3988292384);}));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}return Q(a,H,c);case 2:return P(a,b,c);}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Update=R;M.ptr.prototype.Write=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=0;c=$ifaceNil;d=this;e=R(d.crc,d.tab,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.crc=e;f=a.$length;g=$ifaceNil;b=f;c=g;return[b,c];}return;}if($f===undefined){$f={$blk:M.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.$s=$s;$f.$r=$r;return $f;};M.prototype.Write=function(a){return this.$val.Write(a);};M.ptr.prototype.Sum32=function(){var $ptr,a;a=this;return a.crc;};M.prototype.Sum32=function(){return this.$val.Sum32();};M.ptr.prototype.Sum=function(a){var $ptr,a,b,c;b=this;c=b.Sum32();return $append(a,((c>>>24>>>0)<<24>>>24),((c>>>16>>>0)<<24>>>24),((c>>>8>>>0)<<24>>>24),(c<<24>>>24));};M.prototype.Sum=function(a){return this.$val.Sum(a);};U=function(a,b){var $ptr,a,b;return P(a,D,b);};AA.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"Sum32",name:"Sum32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([Z],[Z],false)}];C.init($Uint32,256);G.init(C,8);M.init([{prop:"crc",name:"crc",pkg:"hash/crc32",typ:$Uint32,tag:""},{prop:"tab",name:"tab",pkg:"hash/crc32",typ:V,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;}D=V.nil;H=W.nil;I=new B.Once.ptr(new B.Mutex.ptr(0,0),0);$pkg.IEEETable=K(3988292384);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/png"]=(function(){var $pkg={},$init,I,A,B,C,D,E,F,G,H,J,O,Q,R,T,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,BD,P,S,K,M,N,U,V,W,X;I=$packages["bufio"];A=$packages["compress/zlib"];B=$packages["encoding/binary"];C=$packages["fmt"];D=$packages["hash"];E=$packages["hash/crc32"];F=$packages["image"];G=$packages["image/color"];H=$packages["io"];J=$packages["strconv"];O=$pkg.interlaceScan=$newType(0,$kindStruct,"png.interlaceScan","interlaceScan","image/png",function(xFactor_,yFactor_,xOffset_,yOffset_){this.$val=this;if(arguments.length===0){this.xFactor=0;this.yFactor=0;this.xOffset=0;this.yOffset=0;return;}this.xFactor=xFactor_;this.yFactor=yFactor_;this.xOffset=xOffset_;this.yOffset=yOffset_;});Q=$pkg.decoder=$newType(0,$kindStruct,"png.decoder","decoder","image/png",function(r_,img_,crc_,width_,height_,depth_,palette_,cb_,stage_,idatLength_,tmp_,interlace_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.img=$ifaceNil;this.crc=$ifaceNil;this.width=0;this.height=0;this.depth=0;this.palette=G.Palette.nil;this.cb=0;this.stage=0;this.idatLength=0;this.tmp=AW.zero();this.interlace=0;return;}this.r=r_;this.img=img_;this.crc=crc_;this.width=width_;this.height=height_;this.depth=depth_;this.palette=palette_;this.cb=cb_;this.stage=stage_;this.idatLength=idatLength_;this.tmp=tmp_;this.interlace=interlace_;});R=$pkg.FormatError=$newType(8,$kindString,"png.FormatError","FormatError","image/png",null);T=$pkg.UnsupportedError=$newType(8,$kindString,"png.UnsupportedError","UnsupportedError","image/png",null);AJ=$sliceType(O);AK=$sliceType($Uint8);AL=$sliceType($emptyInterface);AM=$ptrType(F.Gray);AN=$ptrType(F.RGBA);AO=$ptrType(F.Paletted);AP=$ptrType(F.NRGBA);AQ=$ptrType(F.Gray16);AR=$ptrType(F.RGBA64);AS=$ptrType(F.NRGBA64);AT=$ptrType(F.Alpha);AU=$ptrType(F.Alpha16);AV=$arrayType($Uint8,4096);AW=$arrayType($Uint8,768);BD=$ptrType(Q);K=function(a){var $ptr,a,b;b=a>>31>>0;return(((a^b)>>0))-b>>0;};M=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;d=0;e=0;f=0;g=0;h=0;i=0;j=d;k=e;l=f;m=g;n=h;o=i;p=0;while(true){if(!(p=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+s])>>0);m=k-l>>0;n=j-l>>0;o=K(m+n>>0);m=K(m);n=K(n);if(m<=n&&m<=o){}else if(n<=o){j=k;}else{j=l;}j=j+((((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s])>>0))>>0;j=j&(255);((s<0||s>=a.$length)?$throwRuntimeError("index out of range"):a.$array[a.$offset+s]=(j<<24>>>24));l=k;s=s+(c)>>0;}p=p+(1)>>0;}};N=function(a){var $ptr,a;return 7<=a&&a<=10;};R.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: invalid format: "+a;};$ptrType(R).prototype.Error=function(){return new R(this.$get()).Error();};T.prototype.Error=function(){var $ptr,a;a=this.$val;return"png: unsupported feature: "+a;};$ptrType(T).prototype.Error=function(){return new T(this.$get()).Error();};U=function(a,b){var $ptr,a,b;if(a>0);g=(B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4))>>0);h=(B.BigEndian.Uint32($subslice(new AK(b.tmp),4,8))>>0);if(g<0||h<0){return new R("negative dimension");}i=$mul64(new $Int64(0,g),new $Int64(0,h));if(!((j=new $Int64(0,((i.$low+((i.$high>>31)*4294967296))>>0)),(i.$high===j.$high&&i.$low===j.$low)))){return new T("dimension overflow");}b.cb=0;b.depth=(b.tmp[8]>>0);k=b.depth;if(k===1){l=b.tmp[9];if(l===0){b.cb=1;}else if(l===3){b.cb=7;}}else if(k===2){m=b.tmp[9];if(m===0){b.cb=2;}else if(m===3){b.cb=8;}}else if(k===4){n=b.tmp[9];if(n===0){b.cb=3;}else if(n===3){b.cb=9;}}else if(k===8){o=b.tmp[9];if(o===0){b.cb=4;}else if(o===2){b.cb=6;}else if(o===3){b.cb=10;}else if(o===4){b.cb=5;}else if(o===6){b.cb=11;}}else if(k===16){p=b.tmp[9];if(p===0){b.cb=12;}else if(p===2){b.cb=14;}else if(p===4){b.cb=13;}else if(p===6){b.cb=15;}}if(b.cb===0){$s=5;continue;}$s=6;continue;case 5:q=C.Sprintf("bit depth %d, color type %d",new AL([new $Uint8(b.tmp[8]),new $Uint8(b.tmp[9])]));$s=7;case 7:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=8;case 8:return new T(q);case 6:r=(g>>0);s=(h>>0);b.width=r;b.height=s;t=b.verifyChecksum();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=10;case 10:return t;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIHDR};}$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;};Q.prototype.parseIHDR=function(a){return this.$val.parseIHDR(a);};Q.ptr.prototype.parsePLTE=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,$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;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=((c=a/3,(c===c&&c!==1/0&&c!==-1/0)?c>>>0:$throwRuntimeError("integer divide by zero"))>>0);if(!(((e=a%3,e===e?e:$throwRuntimeError("integer divide by zero"))===0))||d<=0||d>256||d>((f=(b.depth>>>0),f<32?(1<>0)){return new R("bad PLTE length");}h=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,($imul(3,d))));$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))){return j;}k=b.crc.Write($subslice(new AK(b.tmp),0,i));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b.cb;if(l===7||l===8||l===9||l===10){b.palette=$makeSlice(G.Palette,256);m=0;while(true){if(!(m=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+m]=(n=new G.RGBA.ptr((o=b.tmp,p=($imul(3,m))+0>>0,((p<0||p>=o.length)?$throwRuntimeError("index out of range"):o[p])),(q=b.tmp,r=($imul(3,m))+1>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=($imul(3,m))+2>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),255),new n.constructor.elem(n))));m=m+(1)>>0;}v=d;while(true){if(!(v<256)){break;}(x=b.palette,((v<0||v>=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+v]=(w=new G.RGBA.ptr(0,0,0,255),new w.constructor.elem(w))));v=v+(1)>>0;}b.palette=$subslice(b.palette,0,d);}else if(l===6||l===11||l===14||l===15){}else{return new R("PLTE, color type mismatch");}y=b.verifyChecksum();$s=3;case 3:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}$s=4;case 4:return y;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsePLTE};}$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.y=y;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsePLTE=function(a){return this.$val.parsePLTE(a);};Q.ptr.prototype.parsetRNS=function(a){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a>256){return new R("bad tRNS length");}d=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,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];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=b.crc.Write($subslice(new AK(b.tmp),0,e));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.cb;if(h===4||h===12){return new T("grayscale transparency");}else if(h===6||h===14){return new T("truecolor transparency");}else if(h===7||h===8||h===9||h===10){if(b.palette.$length=j.$length)?$throwRuntimeError("index out of range"):j.$array[j.$offset+i])),G.RGBA),G.RGBA);(n=b.palette,((i<0||i>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+i]=(l=new G.NRGBA.ptr(k.R,k.G,k.B,(m=b.tmp,((i<0||i>=m.length)?$throwRuntimeError("index out of range"):m[i]))),new l.constructor.elem(l))));i=i+(1)>>0;}}else if(h===5||h===13||h===11||h===15){return new R("tRNS, color type mismatch");}o=b.verifyChecksum();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=4;case 4:return o;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parsetRNS};}$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.$s=$s;$f.$r=$r;return $f;};Q.prototype.parsetRNS=function(a){return this.$val.parsetRNS(a);};Q.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;if(a.$length===0){return[0,$ifaceNil];}case 1:if(!(b.idatLength===0)){$s=2;continue;}c=b.verifyChecksum();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:f=H.ReadFull(b.r,$subslice(new AK(b.tmp),0,8));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return[0,g];case 8:b.idatLength=B.BigEndian.Uint32($subslice(new AK(b.tmp),0,4));if(!($bytesToString($subslice(new AK(b.tmp),4,8))==="IDAT")){return[0,new R("not enough pixel data")];}$r=b.crc.Reset();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.crc.Write($subslice(new AK(b.tmp),4,8));$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=1;continue;case 2:if((b.idatLength>>0)<0){return[0,new T("IDAT chunk length overflow")];}j=b.r.Read($subslice(a,0,U(a.$length,(b.idatLength>>0))));$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=b.crc.Write($subslice(a,0,k));$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;b.idatLength=b.idatLength-((k>>>0))>>>0;return[k,l];}return;}if($f===undefined){$f={$blk:Q.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;};Q.prototype.Read=function(a){return this.$val.Read(a);};Q.ptr.prototype.decode=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$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;$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);a=this;c=A.NewReader(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))){return[$ifaceNil,e];}$deferred.push([$methodVal(d,"Close"),[]]);f=$ifaceNil;if(a.interlace===0){$s=2;continue;}if(a.interlace===1){$s=3;continue;}$s=4;continue;case 2:h=a.readImagePass(d,0,false);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=g[0];e=g[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}$s=4;continue;case 3:j=a.readImagePass($ifaceNil,0,true);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;f=i[0];e=i[1];if(!($interfaceIsEqual(e,$ifaceNil))){return[$ifaceNil,e];}k=0;case 7:if(!(k<7)){$s=8;continue;}m=a.readImagePass(d,k,false);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){return[$ifaceNil,o];}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$r=a.mergePassInto(f,n,k);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:k=k+(1)>>0;$s=7;continue;case 8:case 4:p=0;q=0;case 13:if(!((p===0)&&$interfaceIsEqual(e,$ifaceNil))){$s=14;continue;}if(q===100){return[$ifaceNil,H.ErrNoProgress];}s=d.Read($subslice(new AK(a.tmp),0,1));$s=15;case 15:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p=r[0];e=r[1];q=q+(1)>>0;$s=13;continue;case 14:if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual(e,H.EOF))){$s=16;continue;}$s=17;continue;case 16:t=e.Error();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=19;case 19:return[$ifaceNil,new R(t)];case 17:if(!((p===0))||!((a.idatLength===0))){return[$ifaceNil,new R("too much pixel data")];}return[f,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:Q.ptr.prototype.decode};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};Q.prototype.decode=function(){return this.$val.decode();};Q.ptr.prototype.readImagePass=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,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,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;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=this;e=0;f=0;g=AM.nil;h=AN.nil;i=AO.nil;j=AP.nil;k=AQ.nil;l=AR.nil;m=AS.nil;n=$ifaceNil;o=d.width;p=d.height;q=o;r=p;if((d.interlace===1)&&!c){s=$clone(((b<0||b>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+b]),O);q=(t=((((q-s.xOffset>>0)+s.xFactor>>0)-1>>0))/s.xFactor,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));r=(u=((((r-s.yOffset>>0)+s.yFactor>>0)-1>>0))/s.yFactor,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if((q===0)||(r===0)){return[$ifaceNil,$ifaceNil];}}v=d.cb;if(v===1||v===2||v===3||v===4){e=d.depth;g=F.NewGray(F.Rect(0,0,q,r));n=g;}else if(v===5){e=16;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===6){e=24;h=F.NewRGBA(F.Rect(0,0,q,r));n=h;}else if(v===7||v===8||v===9||v===10){e=d.depth;i=F.NewPaletted(F.Rect(0,0,q,r),d.palette);n=i;}else if(v===11){e=32;j=F.NewNRGBA(F.Rect(0,0,q,r));n=j;}else if(v===12){e=16;k=F.NewGray16(F.Rect(0,0,q,r));n=k;}else if(v===13){e=32;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}else if(v===14){e=48;l=F.NewRGBA64(F.Rect(0,0,q,r));n=l;}else if(v===15){e=64;m=F.NewNRGBA64(F.Rect(0,0,q,r));n=m;}if(c){return[n,$ifaceNil];}x=(w=((e+7>>0))/8,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"));z=1+(y=((($imul(e,q))+7>>0))/8,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0;aa=$makeSlice(AK,z);ab=$makeSlice(AK,z);ac=0;case 1:if(!(ac=aa.$length?$throwRuntimeError("index out of range"):aa.$array[aa.$offset+0]);if(ai===0){}else if(ai===1){aj=x;while(true){if(!(aj=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj]=(((aj<0||aj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aj])+((ak=aj-x>>0,((ak<0||ak>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ak])))<<24>>>24));aj=aj+(1)>>0;}}else if(ai===2){al=ah;am=0;while(true){if(!(am=al.$length)?$throwRuntimeError("index out of range"):al.$array[al.$offset+am]);((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an]=(((an<0||an>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+an])+(ao)<<24>>>24));am++;}}else if(ai===3){ap=0;while(true){if(!(ap=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap]=(((ap<0||ap>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ap])+((aq=((ap<0||ap>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ap])/2,(aq===aq&&aq!==1/0&&aq!==-1/0)?aq>>>0:$throwRuntimeError("integer divide by zero")))<<24>>>24));ap=ap+(1)>>0;}ar=x;while(true){if(!(ar=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar]=(((ar<0||ar>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ar])+(((as=((((at=ar-x>>0,((at<0||at>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+at]))>>0)+(((ar<0||ar>=ah.$length)?$throwRuntimeError("index out of range"):ah.$array[ah.$offset+ar])>>0)>>0))/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))<<24>>>24));ar=ar+(1)>>0;}}else if(ai===4){M(ag,ah,x);}else{return[$ifaceNil,new R("bad filter type")];}au=d.cb;if(au===1){av=0;while(true){if(!(av>0:$throwRuntimeError("integer divide by zero")),((aw<0||aw>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+aw]));az=0;while(true){if(!(az<8&&(av+az>>0)>0,ac,new G.Gray.ptr(((ay>>>7<<24>>>24))*255<<24>>>24));ay=(ba=(1),ba<32?(ay<>>24;az=az+(1)>>0;}av=av+(8)>>0;}}else if(au===2){bb=0;while(true){if(!(bb>0:$throwRuntimeError("integer divide by zero")),((bc<0||bc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bc]));bf=0;while(true){if(!(bf<4&&(bb+bf>>0)>0,ac,new G.Gray.ptr(((be>>>6<<24>>>24))*85<<24>>>24));be=(bg=(2),bg<32?(be<>>24;bf=bf+(1)>>0;}bb=bb+(4)>>0;}}else if(au===3){bh=0;while(true){if(!(bh>0:$throwRuntimeError("integer divide by zero")),((bi<0||bi>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bi]));bl=0;while(true){if(!(bl<2&&(bh+bl>>0)>0,ac,new G.Gray.ptr(((bk>>>4<<24>>>24))*17<<24>>>24));bk=(bm=(4),bm<32?(bk<>>24;bl=bl+(1)>>0;}bh=bh+(2)>>0;}}else if(au===4){$copySlice($subslice(g.Pix,f),ag);f=f+(g.Stride)>>0;}else if(au===5){bn=0;while(true){if(!(bn>0,((bo<0||bo>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bo]));j.SetNRGBA(bn,ac,new G.NRGBA.ptr(bp,bp,bp,(bq=($imul(2,bn))+1>>0,((bq<0||bq>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+bq]))));bn=bn+(1)>>0;}}else if(au===6){br=h.Pix;bs=f;bt=0;bu=br;bv=bs;bw=bt;bx=0;while(true){if(!(bx>0,((bz<0||bz>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+bz]=(by=bw+0>>0,((by<0||by>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+by]))));(cb=bv+1>>0,((cb<0||cb>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cb]=(ca=bw+1>>0,((ca<0||ca>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ca]))));(cd=bv+2>>0,((cd<0||cd>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+cd]=(cc=bw+2>>0,((cc<0||cc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cc]))));(ce=bv+3>>0,((ce<0||ce>=bu.$length)?$throwRuntimeError("index out of range"):bu.$array[bu.$offset+ce]=255));bv=bv+(4)>>0;bw=bw+(3)>>0;bx=bx+(1)>>0;}f=f+(h.Stride)>>0;}else if(au===7){cf=0;while(true){if(!(cf>0:$throwRuntimeError("integer divide by zero")),((cg<0||cg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cg]));cj=0;while(true){if(!(cj<8&&(cf+cj>>0)>>7<<24>>>24;if(i.Palette.$length<=(ck>>0)){i.Palette=$subslice(i.Palette,0,((ck>>0)+1>>0));}i.SetColorIndex(cf+cj>>0,ac,ck);ci=(cl=(1),cl<32?(ci<>>24;cj=cj+(1)>>0;}cf=cf+(8)>>0;}}else if(au===8){cm=0;while(true){if(!(cm>0:$throwRuntimeError("integer divide by zero")),((cn<0||cn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cn]));cq=0;while(true){if(!(cq<4&&(cm+cq>>0)>>6<<24>>>24;if(i.Palette.$length<=(cr>>0)){i.Palette=$subslice(i.Palette,0,((cr>>0)+1>>0));}i.SetColorIndex(cm+cq>>0,ac,cr);cp=(cs=(2),cs<32?(cp<>>24;cq=cq+(1)>>0;}cm=cm+(4)>>0;}}else if(au===9){ct=0;while(true){if(!(ct>0:$throwRuntimeError("integer divide by zero")),((cu<0||cu>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+cu]));cx=0;while(true){if(!(cx<2&&(ct+cx>>0)>>4<<24>>>24;if(i.Palette.$length<=(cy>>0)){i.Palette=$subslice(i.Palette,0,((cy>>0)+1>>0));}i.SetColorIndex(ct+cx>>0,ac,cy);cw=(cz=(4),cz<32?(cw<>>24;cx=cx+(1)>>0;}ct=ct+(2)>>0;}}else if(au===10){if(!((i.Palette.$length===255))){da=0;while(true){if(!(da=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)){i.Palette=$subslice(i.Palette,0,((((da<0||da>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+da])>>0)+1>>0));}da=da+(1)>>0;}}$copySlice($subslice(i.Pix,f),ag);f=f+(i.Stride)>>0;}else if(au===11){$copySlice($subslice(j.Pix,f),ag);f=f+(j.Stride)>>0;}else if(au===12){db=0;while(true){if(!(db>0,((dc<0||dc>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dc]))<<16>>>16)<<8<<16>>>16)|((dd=($imul(2,db))+1>>0,((dd<0||dd>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dd]))<<16>>>16))>>>0;k.SetGray16(db,ac,new G.Gray16.ptr(de));db=db+(1)>>0;}}else if(au===13){df=0;while(true){if(!(df>0,((dg<0||dg>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dg]))<<16>>>16)<<8<<16>>>16)|((dh=($imul(4,df))+1>>0,((dh<0||dh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dh]))<<16>>>16))>>>0;dl=((((dj=($imul(4,df))+2>>0,((dj<0||dj>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dj]))<<16>>>16)<<8<<16>>>16)|((dk=($imul(4,df))+3>>0,((dk<0||dk>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dk]))<<16>>>16))>>>0;m.SetNRGBA64(df,ac,new G.NRGBA64.ptr(di,di,di,dl));df=df+(1)>>0;}}else if(au===14){dm=0;while(true){if(!(dm>0,((dn<0||dn>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dn]))<<16>>>16)<<8<<16>>>16)|((dp=($imul(6,dm))+1>>0,((dp<0||dp>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dp]))<<16>>>16))>>>0;dt=((((dr=($imul(6,dm))+2>>0,((dr<0||dr>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dr]))<<16>>>16)<<8<<16>>>16)|((ds=($imul(6,dm))+3>>0,((ds<0||ds>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ds]))<<16>>>16))>>>0;dw=((((du=($imul(6,dm))+4>>0,((du<0||du>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+du]))<<16>>>16)<<8<<16>>>16)|((dv=($imul(6,dm))+5>>0,((dv<0||dv>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dv]))<<16>>>16))>>>0;l.SetRGBA64(dm,ac,new G.RGBA64.ptr(dq,dt,dw,65535));dm=dm+(1)>>0;}}else if(au===15){dx=0;while(true){if(!(dx>0,((dy<0||dy>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dy]))<<16>>>16)<<8<<16>>>16)|((dz=($imul(8,dx))+1>>0,((dz<0||dz>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+dz]))<<16>>>16))>>>0;ed=((((eb=($imul(8,dx))+2>>0,((eb<0||eb>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eb]))<<16>>>16)<<8<<16>>>16)|((ec=($imul(8,dx))+3>>0,((ec<0||ec>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ec]))<<16>>>16))>>>0;eg=((((ee=($imul(8,dx))+4>>0,((ee<0||ee>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ee]))<<16>>>16)<<8<<16>>>16)|((ef=($imul(8,dx))+5>>0,((ef<0||ef>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ef]))<<16>>>16))>>>0;ej=((((eh=($imul(8,dx))+6>>0,((eh<0||eh>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+eh]))<<16>>>16)<<8<<16>>>16)|((ei=($imul(8,dx))+7>>0,((ei<0||ei>=ag.$length)?$throwRuntimeError("index out of range"):ag.$array[ag.$offset+ei]))<<16>>>16))>>>0;m.SetNRGBA64(dx,ac,new G.NRGBA64.ptr(ea,ed,eg,ej));dx=dx+(1)>>0;}}ek=aa;el=ab;ab=ek;aa=el;ac=ac+(1)>>0;$s=1;continue;case 2:return[n,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.readImagePass};}$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.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.d=d;$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.e=e;$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.el=el;$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.readImagePass=function(a,b,c){return this.$val.readImagePass(a,b,c);};Q.ptr.prototype.mergePassInto=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,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;bb=$f.bb;bc=$f.bc;bd=$f.bd;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:d=this;e=$clone(((c<0||c>=P.$length)?$throwRuntimeError("index out of range"):P.$array[P.$offset+c]),O);f=AK.nil;g=AK.nil;h=0;i=new F.Rectangle.ptr(new F.Point.ptr(0,0),new F.Point.ptr(0,0));j=0;k=a;if($assertType(k,AT,true)[1]){l=k.$val;f=$assertType(b,AT).Pix;m=l.Pix;n=l.Stride;o=$clone(l.Rect,F.Rectangle);g=m;h=n;F.Rectangle.copy(i,o);j=1;}else if($assertType(k,AU,true)[1]){p=k.$val;f=$assertType(b,AU).Pix;q=p.Pix;r=p.Stride;s=$clone(p.Rect,F.Rectangle);g=q;h=r;F.Rectangle.copy(i,s);j=2;}else if($assertType(k,AM,true)[1]){t=k.$val;f=$assertType(b,AM).Pix;u=t.Pix;v=t.Stride;w=$clone(t.Rect,F.Rectangle);g=u;h=v;F.Rectangle.copy(i,w);j=1;}else if($assertType(k,AQ,true)[1]){x=k.$val;f=$assertType(b,AQ).Pix;y=x.Pix;z=x.Stride;aa=$clone(x.Rect,F.Rectangle);g=y;h=z;F.Rectangle.copy(i,aa);j=2;}else if($assertType(k,AP,true)[1]){ab=k.$val;f=$assertType(b,AP).Pix;ac=ab.Pix;ad=ab.Stride;ae=$clone(ab.Rect,F.Rectangle);g=ac;h=ad;F.Rectangle.copy(i,ae);j=4;}else if($assertType(k,AS,true)[1]){af=k.$val;f=$assertType(b,AS).Pix;ag=af.Pix;ah=af.Stride;ai=$clone(af.Rect,F.Rectangle);g=ag;h=ah;F.Rectangle.copy(i,ai);j=8;}else if($assertType(k,AO,true)[1]){aj=k.$val;f=$assertType(b,AO).Pix;ak=aj.Pix;al=aj.Stride;am=$clone(aj.Rect,F.Rectangle);g=ak;h=al;F.Rectangle.copy(i,am);j=1;}else if($assertType(k,AN,true)[1]){an=k.$val;f=$assertType(b,AN).Pix;ao=an.Pix;ap=an.Stride;aq=$clone(an.Rect,F.Rectangle);g=ao;h=ap;F.Rectangle.copy(i,aq);j=4;}else if($assertType(k,AR,true)[1]){ar=k.$val;f=$assertType(b,AR).Pix;as=ar.Pix;at=ar.Stride;au=$clone(ar.Rect,F.Rectangle);g=as;h=at;F.Rectangle.copy(i,au);j=8;}av=0;ax=b.Bounds();$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=$clone(ax,F.Rectangle);ay=av;az=$clone(aw,F.Rectangle);ba=az.Min.Y;while(true){if(!(ba>0)-i.Min.Y>>0)),h))+($imul(((e.xOffset-i.Min.X>>0)),j))>>0;bc=az.Min.X;while(true){if(!(bc>0;$copySlice($subslice(g,bd),$subslice(f,ay,(ay+j>>0)));ay=ay+(j)>>0;bc=bc+(1)>>0;}ba=ba+(1)>>0;}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mergePassInto};}$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.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.mergePassInto=function(a,b,c){return this.$val.mergePassInto(a,b,c);};Q.ptr.prototype.parseIDAT=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=$ifaceNil;c=this;c.idatLength=a;e=c.decode();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c.img=d[0];b=d[1];if(!($interfaceIsEqual(b,$ifaceNil))){b=b;return b;}f=c.verifyChecksum();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}b=f;$s=3;case 3:return b;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIDAT};}$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;};Q.prototype.parseIDAT=function(a){return this.$val.parseIDAT(a);};Q.ptr.prototype.parseIEND=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;if(!((a===0))){return new R("bad IEND length");}c=b.verifyChecksum();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseIEND};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.parseIEND=function(a){return this.$val.parseIEND(a);};Q.ptr.prototype.parseChunk=function(){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:a=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$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))){return e;}f=B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4));$r=a.crc.Reset();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.crc.Write($subslice(new AK(a.tmp),4,8));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=$bytesToString($subslice(new AK(a.tmp),4,8));if(h==="IHDR"){$s=4;continue;}if(h==="PLTE"){$s=5;continue;}if(h==="tRNS"){$s=6;continue;}if(h==="IDAT"){$s=7;continue;}if(h==="IEND"){$s=8;continue;}$s=9;continue;case 4:if(!((a.stage===0))){return new R(S);}a.stage=1;i=a.parseIHDR(f);$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=11;case 11:return i;case 5:if(!((a.stage===1))){return new R(S);}a.stage=2;j=a.parsePLTE(f);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=13;case 13:return j;case 6:if(!((a.stage===2))){return new R(S);}a.stage=3;k=a.parsetRNS(f);$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=15;case 15:return k;case 7:if(a.stage<1||a.stage>4||((a.stage===1)&&N(a.cb))){return new R(S);}a.stage=4;l=a.parseIDAT(f);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=17;case 17:return l;case 8:if(!((a.stage===4))){return new R(S);}a.stage=5;m=a.parseIEND(f);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=19;case 19:return m;case 9:n=AV.zero();case 20:if(!(f>0)){$s=21;continue;}p=H.ReadFull(a.r,$subslice(new AK(n),0,U(4096,(f>>0))));$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;d=o[0];e=o[1];if(!($interfaceIsEqual(e,$ifaceNil))){return e;}q=a.crc.Write($subslice(new AK(n),0,d));$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;f=f-((d>>>0))>>>0;$s=20;continue;case 21:r=a.verifyChecksum();$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=25;case 25:return r;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.parseChunk};}$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;};Q.prototype.parseChunk=function(){return this.$val.parseChunk();};Q.ptr.prototype.verifyChecksum=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;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,4));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:e=a.crc.Sum32();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(!((B.BigEndian.Uint32($subslice(new AK(a.tmp),0,4))===e))){$s=4;continue;}$s=5;continue;case 4:return new R("invalid checksum");case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.verifyChecksum};}$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;};Q.prototype.verifyChecksum=function(){return this.$val.verifyChecksum();};Q.ptr.prototype.checkHeader=function(){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=this;c=H.ReadFull(a.r,$subslice(new AK(a.tmp),0,8));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}if(!($bytesToString($subslice(new AK(a.tmp),0,8))==="\x89PNG\r\n\x1A\n")){return new R("not a PNG file");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.checkHeader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.checkHeader=function(){return this.$val.checkHeader();};V=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[$ifaceNil,d];case 3:case 4:if(!(!((b.stage===5)))){$s=5;continue;}e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[$ifaceNil,f];case 8:$s=4;continue;case 5:return[b.img,$ifaceNil];}return;}if($f===undefined){$f={$blk:V};}$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.Decode=V;W=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=new Q.ptr(a,$ifaceNil,E.NewIEEE(),0,0,0,G.Palette.nil,0,0,0,AW.zero(),0);c=b.checkHeader();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:if($interfaceIsEqual(d,H.EOF)){d=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),d];case 3:case 4:e=b.parseChunk();$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:if($interfaceIsEqual(f,H.EOF)){f=H.ErrUnexpectedEOF;}return[new F.Config.ptr($ifaceNil,0,0),f];case 8:g=N(b.cb);if((b.stage===1)&&!g){$s=5;continue;}if((b.stage===2)&&g){$s=5;continue;}$s=4;continue;case 5:h=$ifaceNil;i=b.cb;if(i===1||i===2||i===3||i===4){h=G.GrayModel;}else if(i===5){h=G.NRGBAModel;}else if(i===6){h=G.RGBAModel;}else if(i===7||i===8||i===9||i===10){h=b.palette;}else if(i===11){h=G.NRGBAModel;}else if(i===12){h=G.Gray16Model;}else if(i===13){h=G.NRGBA64Model;}else if(i===14){h=G.RGBA64Model;}else if(i===15){h=G.NRGBA64Model;}return[new F.Config.ptr(h,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$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;};$pkg.DecodeConfig=W;X=function(){var $ptr;F.RegisterFormat("png","\x89PNG\r\n\x1A\n",V,W);};BD.methods=[{prop:"parseIHDR",name:"parseIHDR",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsePLTE",name:"parsePLTE",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parsetRNS",name:"parsetRNS",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AK],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"image/png",typ:$funcType([],[F.Image,$error],false)},{prop:"readImagePass",name:"readImagePass",pkg:"image/png",typ:$funcType([H.Reader,$Int,$Bool],[F.Image,$error],false)},{prop:"mergePassInto",name:"mergePassInto",pkg:"image/png",typ:$funcType([F.Image,F.Image,$Int],[],false)},{prop:"parseIDAT",name:"parseIDAT",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseIEND",name:"parseIEND",pkg:"image/png",typ:$funcType([$Uint32],[$error],false)},{prop:"parseChunk",name:"parseChunk",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"verifyChecksum",name:"verifyChecksum",pkg:"image/png",typ:$funcType([],[$error],false)},{prop:"checkHeader",name:"checkHeader",pkg:"image/png",typ:$funcType([],[$error],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];O.init([{prop:"xFactor",name:"xFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"yFactor",name:"yFactor",pkg:"image/png",typ:$Int,tag:""},{prop:"xOffset",name:"xOffset",pkg:"image/png",typ:$Int,tag:""},{prop:"yOffset",name:"yOffset",pkg:"image/png",typ:$Int,tag:""}]);Q.init([{prop:"r",name:"r",pkg:"image/png",typ:H.Reader,tag:""},{prop:"img",name:"img",pkg:"image/png",typ:F.Image,tag:""},{prop:"crc",name:"crc",pkg:"image/png",typ:D.Hash32,tag:""},{prop:"width",name:"width",pkg:"image/png",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/png",typ:$Int,tag:""},{prop:"depth",name:"depth",pkg:"image/png",typ:$Int,tag:""},{prop:"palette",name:"palette",pkg:"image/png",typ:G.Palette,tag:""},{prop:"cb",name:"cb",pkg:"image/png",typ:$Int,tag:""},{prop:"stage",name:"stage",pkg:"image/png",typ:$Int,tag:""},{prop:"idatLength",name:"idatLength",pkg:"image/png",typ:$Uint32,tag:""},{prop:"tmp",name:"tmp",pkg:"image/png",typ:AW,tag:""},{prop:"interlace",name:"interlace",pkg:"image/png",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=I.$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=E.$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=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$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;}P=new AJ([new O.ptr(8,8,0,0),new O.ptr(8,8,4,0),new O.ptr(4,8,0,4),new O.ptr(4,4,2,0),new O.ptr(2,4,0,2),new O.ptr(2,2,1,0),new O.ptr(1,2,0,1)]);S="chunk out of order";X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["strings"];C=$packages["unicode/utf8"];$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;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"]=(function(){var $pkg={},$init,A,D,B,C,E,F,G,H,I,J;A=$packages["bytes"];D=$packages["fmt"];B=$packages["image"];C=$packages["image/png"];E=$packages["io/ioutil"];F=$packages["os"];G=$packages["path"];H=$packages["path/filepath"];I=$packages["strings"];J=$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=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;}$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;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/color/palette"]=(function(){var $pkg={},$init,A;A=$packages["image/color"];$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["compress/lzw"]=(function(){var $pkg={},$init,A,B,C,D,F,N,O,P,Q,R,S,V,G,L,H;A=$packages["bufio"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];F=$pkg.decoder=$newType(0,$kindStruct,"lzw.decoder","decoder","compress/lzw",function(r_,bits_,nBits_,width_,read_,litWidth_,err_,clear_,eof_,hi_,overflow_,last_,suffix_,prefix_,output_,o_,toRead_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=0;this.nBits=0;this.width=0;this.read=$throwNilPointerError;this.litWidth=0;this.err=$ifaceNil;this.clear=0;this.eof=0;this.hi=0;this.overflow=0;this.last=0;this.suffix=O.zero();this.prefix=P.zero();this.output=Q.zero();this.o=0;this.toRead=N.nil;return;}this.r=r_;this.bits=bits_;this.nBits=nBits_;this.width=width_;this.read=read_;this.litWidth=litWidth_;this.err=err_;this.clear=clear_;this.eof=eof_;this.hi=hi_;this.overflow=overflow_;this.last=last_;this.suffix=suffix_;this.prefix=prefix_;this.output=output_;this.o=o_;this.toRead=toRead_;});N=$sliceType($Uint8);O=$arrayType($Uint8,4096);P=$arrayType($Uint16,4096);Q=$arrayType($Uint8,8192);R=$ptrType(F);S=$sliceType($emptyInterface);V=$funcType([R],[$Uint16,$error],false);F.ptr.prototype.readLSB=function(){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:a=this;case 1:if(!(a.nBits>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((a.bits&((((g=a.width,g<32?(1<>>0)-1>>>0)))>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits>>>i):0)>>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readLSB};}$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;};F.prototype.readLSB=function(){return this.$val.readLSB();};F.ptr.prototype.readMSB=function(){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:a=this;case 1:if(!(a.nBits>>0)),f<32?((d>>>0)<>>0)))>>>0;a.nBits=a.nBits+(8)>>>0;$s=1;continue;case 2:h=(((g=((32-a.width>>>0)),g<32?(a.bits>>>g):0)>>>0)<<16>>>16);a.bits=(i=(a.width),i<32?(a.bits<>>0;a.nBits=a.nBits-(a.width)>>>0;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:F.ptr.prototype.readMSB};}$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;};F.prototype.readMSB=function(){return this.$val.readMSB();};F.ptr.prototype.Read=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;case 1:if(b.toRead.$length>0){c=$copySlice(a,b.toRead);b.toRead=$subslice(b.toRead,c);return[c,$ifaceNil];}if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}$r=b.decode();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};F.prototype.Read=function(a){return this.$val.Read(a);};F.ptr.prototype.decode=function(){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:a=this;case 1:c=a.read(a);$s=3;case 3: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))){if($interfaceIsEqual(e,D.EOF)){e=D.ErrUnexpectedEOF;}a.err=e;a.flush();return;}if(d=f.length)?$throwRuntimeError("index out of range"):f[g]=(d<<24>>>24)));a.o=a.o+(1)>>0;if(!((a.last===65535))){(h=a.suffix,i=a.hi,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]=(d<<24>>>24)));(j=a.prefix,k=a.hi,((k<0||k>=j.length)?$throwRuntimeError("index out of range"):j[k]=a.last));}}else if(d===a.clear){a.width=1+(a.litWidth>>>0)>>>0;a.hi=a.eof;a.overflow=(l=a.width,l<32?(1<>>16;a.last=65535;$s=1;continue;}else if(d===a.eof){a.flush();a.err=D.EOF;return;}else if(d<=a.hi){m=d;n=8191;o=m;p=n;if(d===a.hi){o=a.last;while(true){if(!(o>=a.clear)){break;}o=(q=a.prefix,((o<0||o>=q.length)?$throwRuntimeError("index out of range"):q[o]));}(r=a.output,((p<0||p>=r.length)?$throwRuntimeError("index out of range"):r[p]=(o<<24>>>24)));p=p-(1)>>0;o=a.last;}while(true){if(!(o>=a.clear)){break;}(t=a.output,((p<0||p>=t.length)?$throwRuntimeError("index out of range"):t[p]=(s=a.suffix,((o<0||o>=s.length)?$throwRuntimeError("index out of range"):s[o]))));p=p-(1)>>0;o=(u=a.prefix,((o<0||o>=u.length)?$throwRuntimeError("index out of range"):u[o]));}(v=a.output,((p<0||p>=v.length)?$throwRuntimeError("index out of range"):v[p]=(o<<24>>>24)));a.o=a.o+($copySlice($subslice(new N(a.output),a.o),$subslice(new N(a.output),p)))>>0;if(!((a.last===65535))){(w=a.suffix,x=a.hi,((x<0||x>=w.length)?$throwRuntimeError("index out of range"):w[x]=(o<<24>>>24)));(y=a.prefix,z=a.hi,((z<0||z>=y.length)?$throwRuntimeError("index out of range"):y[z]=a.last));}}else{a.err=B.New("lzw: invalid code");a.flush();return;}aa=d;ab=a.hi+1<<16>>>16;a.last=aa;a.hi=ab;if(a.hi>=a.overflow){if(a.width===12){a.last=65535;}else{a.width=a.width+(1)>>>0;a.overflow=(ac=(1),ac<32?(a.overflow<>>16;}}if(a.o>=4096){a.flush();return;}$s=1;continue;case 2:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:F.ptr.prototype.decode};}$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;};F.prototype.decode=function(){return this.$val.decode();};F.ptr.prototype.flush=function(){var $ptr,a;a=this;a.toRead=$subslice(new N(a.output),0,a.o);a.o=0;};F.prototype.flush=function(){return this.$val.flush();};F.ptr.prototype.Close=function(){var $ptr,a;a=this;a.err=G;return $ifaceNil;};F.prototype.Close=function(){return this.$val.Close();};H=function(a,b,c){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:d=new F.ptr($ifaceNil,0,0,0,$throwNilPointerError,0,$ifaceNil,0,0,0,0,0,O.zero(),P.zero(),Q.zero(),0,N.nil);e=b;if(e===0){d.read=$methodExpr(R,"readLSB");}else if(e===1){d.read=$methodExpr(R,"readMSB");}else{d.err=B.New("lzw: unknown order");return d;}if(c<2||8>>0)>>>0;d.clear=(j=(c>>>0),j<32?(1<>>16;k=d.clear+1<<16>>>16;l=d.clear+1<<16>>>16;d.eof=k;d.hi=l;d.overflow=(m=d.width,m<32?(1<>>16;d.last=65535;return d;}return;}if($f===undefined){$f={$blk:H};}$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;};$pkg.NewReader=H;R.methods=[{prop:"readLSB",name:"readLSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"readMSB",name:"readMSB",pkg:"compress/lzw",typ:$funcType([],[$Uint16,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"decode",name:"decode",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"flush",name:"flush",pkg:"compress/lzw",typ:$funcType([],[],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];F.init([{prop:"r",name:"r",pkg:"compress/lzw",typ:D.ByteReader,tag:""},{prop:"bits",name:"bits",pkg:"compress/lzw",typ:$Uint32,tag:""},{prop:"nBits",name:"nBits",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"width",name:"width",pkg:"compress/lzw",typ:$Uint,tag:""},{prop:"read",name:"read",pkg:"compress/lzw",typ:V,tag:""},{prop:"litWidth",name:"litWidth",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"err",name:"err",pkg:"compress/lzw",typ:$error,tag:""},{prop:"clear",name:"clear",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"eof",name:"eof",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"hi",name:"hi",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"overflow",name:"overflow",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"last",name:"last",pkg:"compress/lzw",typ:$Uint16,tag:""},{prop:"suffix",name:"suffix",pkg:"compress/lzw",typ:O,tag:""},{prop:"prefix",name:"prefix",pkg:"compress/lzw",typ:P,tag:""},{prop:"output",name:"output",pkg:"compress/lzw",typ:Q,tag:""},{prop:"o",name:"o",pkg:"compress/lzw",typ:$Int,tag:""},{prop:"toRead",name:"toRead",pkg:"compress/lzw",typ:N,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;}G=B.New("lzw: reader/writer is closed");L=B.New("lzw: out of codes");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/gif"]=(function(){var $pkg={},$init,A,H,B,C,D,E,F,I,J,G,N,O,P,Q,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AV,AW,K,L,M,R,S,T,W,X;A=$packages["bufio"];H=$packages["bytes"];B=$packages["compress/lzw"];C=$packages["errors"];D=$packages["fmt"];E=$packages["image"];F=$packages["image/color"];I=$packages["image/color/palette"];J=$packages["image/draw"];G=$packages["io"];N=$pkg.reader=$newType(8,$kindInterface,"gif.reader","reader","image/gif",null);O=$pkg.decoder=$newType(0,$kindStruct,"gif.decoder","decoder","image/gif",function(r_,vers_,width_,height_,loopCount_,delayTime_,backgroundIndex_,disposalMethod_,imageFields_,transparentIndex_,hasTransparentIndex_,globalColorTable_,delay_,disposal_,image_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.vers="";this.width=0;this.height=0;this.loopCount=0;this.delayTime=0;this.backgroundIndex=0;this.disposalMethod=0;this.imageFields=0;this.transparentIndex=0;this.hasTransparentIndex=false;this.globalColorTable=F.Palette.nil;this.delay=AO.nil;this.disposal=AJ.nil;this.image=AP.nil;this.tmp=AQ.zero();return;}this.r=r_;this.vers=vers_;this.width=width_;this.height=height_;this.loopCount=loopCount_;this.delayTime=delayTime_;this.backgroundIndex=backgroundIndex_;this.disposalMethod=disposalMethod_;this.imageFields=imageFields_;this.transparentIndex=transparentIndex_;this.hasTransparentIndex=hasTransparentIndex_;this.globalColorTable=globalColorTable_;this.delay=delay_;this.disposal=disposal_;this.image=image_;this.tmp=tmp_;});P=$pkg.blockReader=$newType(0,$kindStruct,"gif.blockReader","blockReader","image/gif",function(r_,slice_,err_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.slice=AJ.nil;this.err=$ifaceNil;this.tmp=AM.zero();return;}this.r=r_;this.slice=slice_;this.err=err_;this.tmp=tmp_;});Q=$pkg.interlaceScan=$newType(0,$kindStruct,"gif.interlaceScan","interlaceScan","image/gif",function(skip_,start_){this.$val=this;if(arguments.length===0){this.skip=0;this.start=0;return;}this.skip=skip_;this.start=start_;});AI=$sliceType(Q);AJ=$sliceType($Uint8);AK=$sliceType(F.Color);AL=$sliceType($emptyInterface);AM=$arrayType($Uint8,256);AN=$ptrType(E.Paletted);AO=$sliceType($Int);AP=$sliceType(AN);AQ=$arrayType($Uint8,1024);AV=$ptrType(O);AW=$ptrType(P);P.ptr.prototype.Read=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;if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(a.$length===0){return[0,$ifaceNil];}if(b.slice.$length===0){$s=1;continue;}$s=2;continue;case 1:c=0;e=b.r.ReadByte();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;c=d[0];b.err=d[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){return[0,b.err];}if(c===0){b.err=G.EOF;return[0,b.err];}b.slice=$subslice(new AJ(b.tmp),0,c);g=G.ReadFull(b.r,b.slice);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;b.err=f[1];if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:return[0,b.err];case 6:case 2:h=$copySlice(a,b.slice);b.slice=$subslice(b.slice,h);return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:P.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.$s=$s;$f.$r=$r;return $f;};P.prototype.Read=function(a){return this.$val.Read(a);};O.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,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,$deferred,$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;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;$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);c=this;d=$assertType(a,N,true);e=d[0];f=d[1];if(f){c.r=e;}else{c.r=A.NewReader(a);}g=c.readHeaderAndScreenDescriptor();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){return h;}if(b){return $ifaceNil;}case 2:j=c.r.ReadByte();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}m=k;if(m===33){$s=5;continue;}if(m===44){$s=6;continue;}if(m===59){$s=7;continue;}$s=8;continue;case 5:n=c.readExtension();$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;if(!($interfaceIsEqual(l,$ifaceNil))){$s=11;continue;}$s=12;continue;case 11:return l;case 12:$s=9;continue;case 6:p=c.newImageFromDescriptor();$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}s=!((((c.imageFields&128)>>>0)===0));if(s){$s=14;continue;}$s=15;continue;case 14:u=c.readColorTable(c.imageFields);$s=17;case 17:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q.Palette=t[0];r=t[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}$s=16;continue;case 15:if(c.globalColorTable===F.Palette.nil){return C.New("gif: no color table");}q.Palette=c.globalColorTable;case 16:if(c.hasTransparentIndex&&(c.transparentIndex>>0)=x.$length)?$throwRuntimeError("index out of range"):x.$array[x.$offset+y]=(w=new F.RGBA.ptr(0,0,0,0),new w.constructor.elem(w))));}aa=c.r.ReadByte();$s=18;case 18:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;ab=z[0];r=z[1];if(!($interfaceIsEqual(r,$ifaceNil))){return r;}if(ab<2||ab>8){$s=19;continue;}$s=20;continue;case 19:ac=D.Errorf("gif: pixel size in decode out of range: %d",new AL([new $Uint8(ab)]));$s=21;case 21:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$s=22;case 22:return ac;case 20:ad=new P.ptr(c.r,AJ.nil,$ifaceNil,AM.zero());ae=B.NewReader(ad,0,(ab>>0));$s=23;case 23:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$deferred.push([$methodVal(af,"Close"),[]]);ah=G.ReadFull(af,q.Pix);$s=24;case 24:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;r=ag[1];if(!($interfaceIsEqual(r,$ifaceNil))){$s=25;continue;}$s=26;continue;case 25:if(!($interfaceIsEqual(r,G.ErrUnexpectedEOF))){return r;}return K;case 26:aj=af.Read($subslice(new AJ(c.tmp),0,1));$s=27;case 27:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[0];al=ai[1];if(!((ak===0))||(!($interfaceIsEqual(al,G.EOF))&&!($interfaceIsEqual(al,G.ErrUnexpectedEOF)))){$s=28;continue;}$s=29;continue;case 28:if(!($interfaceIsEqual(al,$ifaceNil))){return al;}return L;case 29:an=ad.Read($subslice(new AJ(c.tmp),0,1));$s=30;case 30:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(!((ao===0))||!($interfaceIsEqual(ap,G.EOF))){$s=31;continue;}$s=32;continue;case 31:if(!($interfaceIsEqual(ap,$ifaceNil))){return ap;}return L;case 32:if(q.Palette.$length<256){aq=q.Pix;ar=0;while(true){if(!(ar=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ar]);if((as>>0)>=q.Palette.$length){return M;}ar++;}}if(!((((c.imageFields&64)>>>0)===0))){S(q);}c.image=$append(c.image,q);c.delay=$append(c.delay,c.delayTime);c.disposal=$append(c.disposal,c.disposalMethod);c.delayTime=0;c.hasTransparentIndex=false;$s=9;continue;case 7:if(c.image.$length===0){return G.ErrUnexpectedEOF;}return $ifaceNil;case 8:at=D.Errorf("gif: unknown block type: 0x%.2x",new AL([new $Uint8(k)]));$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=34;case 34:return at;case 9:$s=2;continue;case 3:$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:O.ptr.prototype.decode};}$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.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.$deferred=$deferred;$f.$r=$r;return $f;}}};O.prototype.decode=function(a,b){return this.$val.decode(a,b);};O.ptr.prototype.readHeaderAndScreenDescriptor=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;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,13));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){return d;}a.vers=$bytesToString($subslice(new AJ(a.tmp),0,6));if(!(a.vers==="GIF87a")&&!(a.vers==="GIF89a")){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't recognize format %s",new AL([new $String(a.vers)]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:a.width=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.height=(a.tmp[8]>>0)+((a.tmp[9]>>0)<<8>>0)>>0;f=a.tmp[10];if(!((((f&128)>>>0)===0))){$s=6;continue;}$s=7;continue;case 6:a.backgroundIndex=a.tmp[11];h=a.readColorTable(f);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;a.globalColorTable=g[0];d=g[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return d;case 10:case 7:return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readHeaderAndScreenDescriptor};}$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.readHeaderAndScreenDescriptor=function(){return this.$val.readHeaderAndScreenDescriptor();};O.ptr.prototype.readColorTable=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=this;d=(c=((1+(((a&7)>>>0)>>>0)>>>0)),c<32?(1<>0;f=G.ReadFull(b.r,$subslice(new AJ(b.tmp),0,($imul(3,d))));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=D.Errorf("gif: short read on color table: %s",new AL([g]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=5;case 5:return[F.Palette.nil,h];case 3:i=0;j=$makeSlice(F.Palette,d);k=i;l=j;m=l;n=0;while(true){if(!(n=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+o]=(p=new F.RGBA.ptr((q=b.tmp,r=k+0>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r])),(s=b.tmp,t=k+1>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),(u=b.tmp,v=k+2>>0,((v<0||v>=u.length)?$throwRuntimeError("index out of range"):u[v])),255),new p.constructor.elem(p)));k=k+(3)>>0;n++;}return[l,$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readColorTable};}$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;};O.prototype.readColorTable=function(a){return this.$val.readColorTable(a);};O.ptr.prototype.readExtension=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;c=a.r.ReadByte();$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))){return e;}f=0;g=d;if(g===1){$s=2;continue;}if(g===249){$s=3;continue;}if(g===254){$s=4;continue;}if(g===255){$s=5;continue;}$s=6;continue;case 2:f=13;$s=7;continue;case 3:h=a.readGraphicControl();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=9;case 9:return h;case 4:$s=7;continue;case 5:j=a.r.ReadByte();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){return l;}f=(k>>0);$s=7;continue;case 6:m=D.Errorf("gif: unknown extension 0x%.2x",new AL([new $Uint8(d)]));$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=12;case 12:return m;case 7:if(f>0){$s=13;continue;}$s=14;continue;case 13:o=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,f));$s=15;case 15:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=16;continue;}$s=17;continue;case 16:return p;case 17:case 14:if((d===255)&&$bytesToString($subslice(new AJ(a.tmp),0,f))==="NETSCAPE2.0"){$s=18;continue;}$s=19;continue;case 18:r=a.readBlock();$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if((s===0)||!($interfaceIsEqual(t,$ifaceNil))){return t;}if((s===3)&&(a.tmp[0]===1)){a.loopCount=(a.tmp[1]>>0)|((a.tmp[2]>>0)<<8>>0);}case 19:case 21:v=a.readBlock();$s=23;case 23: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)||!($interfaceIsEqual(x,$ifaceNil))){return x;}$s=21;continue;case 22:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readExtension};}$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;};O.prototype.readExtension=function(){return this.$val.readExtension();};O.ptr.prototype.readGraphicControl=function(){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=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,6));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read graphic control: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return e;case 3:f=a.tmp[1];a.disposalMethod=(((f&28)>>>0))>>>2<<24>>>24;a.delayTime=(a.tmp[2]>>0)|((a.tmp[3]>>0)<<8>>0);if(!((((f&1)>>>0)===0))){a.transparentIndex=a.tmp[4];a.hasTransparentIndex=true;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readGraphicControl};}$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;};O.prototype.readGraphicControl=function(){return this.$val.readGraphicControl();};O.ptr.prototype.newImageFromDescriptor=function(){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:a=this;c=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,9));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[1];if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:e=D.Errorf("gif: can't read image descriptor: %s",new AL([d]));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=5;case 5:return[AN.nil,e];case 3:f=(a.tmp[0]>>0)+((a.tmp[1]>>0)<<8>>0)>>0;g=(a.tmp[2]>>0)+((a.tmp[3]>>0)<<8>>0)>>0;h=(a.tmp[4]>>0)+((a.tmp[5]>>0)<<8>>0)>>0;i=(a.tmp[6]>>0)+((a.tmp[7]>>0)<<8>>0)>>0;a.imageFields=a.tmp[8];j=$clone(E.Rect(f,g,f+h>>0,g+i>>0),E.Rectangle);if(!($equal(j,j.Intersect(E.Rect(0,0,a.width,a.height)),E.Rectangle))){return[AN.nil,C.New("gif: frame bounds larger than image bounds")];}return[E.NewPaletted(j,F.Palette.nil),$ifaceNil];}return;}if($f===undefined){$f={$blk:O.ptr.prototype.newImageFromDescriptor};}$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.newImageFromDescriptor=function(){return this.$val.newImageFromDescriptor();};O.ptr.prototype.readBlock=function(){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=this;c=a.r.ReadByte();$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((d===0)||!($interfaceIsEqual(e,$ifaceNil))){return[0,e];}f=G.ReadFull(a.r,$subslice(new AJ(a.tmp),0,d));$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=3;case 3:return f;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.readBlock};}$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;};O.prototype.readBlock=function(){return this.$val.readBlock();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=AJ.nil;c=a.Bounds().Dx();d=a.Bounds().Dy();b=$makeSlice(AJ,($imul(c,d)));e=0;f=R;g=0;while(true){if(!(g=f.$length)?$throwRuntimeError("index out of range"):f.$array[f.$offset+g]),Q);i=$imul(h.start,c);j=h.start;while(true){if(!(j>0)),$subslice(a.Pix,e,(e+c>>0)));e=e+(c)>>0;i=i+(($imul(c,h.skip)))>>0;j=j+(h.skip)>>0;}g++;}a.Pix=b;};T=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=new O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,d];case 3:return[(e=b.image,(0>=e.$length?$throwRuntimeError("index out of range"):e.$array[e.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:T};}$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.Decode=T;W=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 O.ptr($ifaceNil,"",0,0,0,0,0,0,0,0,false,F.Palette.nil,AO.nil,AJ.nil,AP.nil,AQ.zero());c=b.decode(a,true);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new E.Config.ptr($ifaceNil,0,0),d];case 3:return[new E.Config.ptr(b.globalColorTable,b.width,b.height),$ifaceNil];}return;}if($f===undefined){$f={$blk:W};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeConfig=W;X=function(){var $ptr;E.RegisterFormat("gif","GIF8?a",T,W);};AV.methods=[{prop:"decode",name:"decode",pkg:"image/gif",typ:$funcType([G.Reader,$Bool],[$error],false)},{prop:"readHeaderAndScreenDescriptor",name:"readHeaderAndScreenDescriptor",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readColorTable",name:"readColorTable",pkg:"image/gif",typ:$funcType([$Uint8],[F.Palette,$error],false)},{prop:"readExtension",name:"readExtension",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"readGraphicControl",name:"readGraphicControl",pkg:"image/gif",typ:$funcType([],[$error],false)},{prop:"newImageFromDescriptor",name:"newImageFromDescriptor",pkg:"image/gif",typ:$funcType([],[AN,$error],false)},{prop:"readBlock",name:"readBlock",pkg:"image/gif",typ:$funcType([],[$Int,$error],false)}];AW.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([AJ],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)}]);O.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"vers",name:"vers",pkg:"image/gif",typ:$String,tag:""},{prop:"width",name:"width",pkg:"image/gif",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/gif",typ:$Int,tag:""},{prop:"loopCount",name:"loopCount",pkg:"image/gif",typ:$Int,tag:""},{prop:"delayTime",name:"delayTime",pkg:"image/gif",typ:$Int,tag:""},{prop:"backgroundIndex",name:"backgroundIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"disposalMethod",name:"disposalMethod",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"imageFields",name:"imageFields",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"transparentIndex",name:"transparentIndex",pkg:"image/gif",typ:$Uint8,tag:""},{prop:"hasTransparentIndex",name:"hasTransparentIndex",pkg:"image/gif",typ:$Bool,tag:""},{prop:"globalColorTable",name:"globalColorTable",pkg:"image/gif",typ:F.Palette,tag:""},{prop:"delay",name:"delay",pkg:"image/gif",typ:AO,tag:""},{prop:"disposal",name:"disposal",pkg:"image/gif",typ:AJ,tag:""},{prop:"image",name:"image",pkg:"image/gif",typ:AP,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AQ,tag:""}]);P.init([{prop:"r",name:"r",pkg:"image/gif",typ:N,tag:""},{prop:"slice",name:"slice",pkg:"image/gif",typ:AJ,tag:""},{prop:"err",name:"err",pkg:"image/gif",typ:$error,tag:""},{prop:"tmp",name:"tmp",pkg:"image/gif",typ:AM,tag:""}]);Q.init([{prop:"skip",name:"skip",pkg:"image/gif",typ:$Int,tag:""},{prop:"start",name:"start",pkg:"image/gif",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=A.$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=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=E.$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=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=C.New("gif: not enough image data");L=C.New("gif: too much image data");M=C.New("gif: invalid pixel value");R=new AI([new Q.ptr(8,0),new Q.ptr(8,4),new Q.ptr(4,2),new Q.ptr(2,1)]);X();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/ebitenutil"]=(function(){var $pkg={},$init,L,M,N,O,A,B,F,C,G,H,I,J,D,E,K,Y,AE,AF,AL,AM,AN,U,V,X;L=$packages["bytes"];M=$packages["errors"];N=$packages["fmt"];O=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil/internal/assets"];F=$packages["image"];C=$packages["image/color"];G=$packages["image/color/palette"];H=$packages["image/draw"];I=$packages["image/gif"];J=$packages["io"];D=$packages["math"];E=$packages["strings"];K=$packages["sync"];Y=$ptrType(A.Image);AE=$sliceType(C.Color);AF=$sliceType($Uint8);AL=$structType([]);AM=$sliceType($emptyInterface);AN=$funcType([],[],false);V=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k;a=new AE([]);b=new AF([0,128,255]);c=0;while(true){if(!(c=b.$length)?$throwRuntimeError("index out of range"):b.$array[b.$offset+c]);e=new AF([0,128,255]);f=0;while(true){if(!(f=e.$length)?$throwRuntimeError("index out of range"):e.$array[e.$offset+f]);h=new AF([0,128,255]);i=0;while(true){if(!(i=h.$length)?$throwRuntimeError("index out of range"):h.$array[h.$offset+i]);a=$append(a,(k=new C.RGBA.ptr(d,g,j,255),new k.constructor.elem(k)));i++;}f++;}c++;}U=$subslice(new C.Palette(a.$array),a.$offset,a.$offset+a.$length);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h,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;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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=$ifaceNil;e[0]=null;c[0]=new $Chan(AL,0);d[0]=new($global.XMLHttpRequest)();d[0].open($externalize("GET",$String),$externalize(a,$String),$externalize(true,$Bool));d[0].responseType=$externalize("arraybuffer",$String);d[0].addEventListener($externalize("load",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,j,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=$parseInt(d[0].status)>>0;if(200<=h&&h<400){e[0]=d[0].response;return;}i=N.Sprintf("http error: %d",new AM([new $Int(h)]));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=M.New(i);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}f[0]=j;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){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.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].addEventListener($externalize("error",$String),$externalize((function(c,d,e,f){return function $b(){var $ptr,g,h,i,$s,$deferred,$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;$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);$deferred.push([function(g){$close(g);},[c[0]]]);h=N.Sprintf("XMLHttpRequest error: %s",new AM([new $String($internalize(d[0].statusText,$String))]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=M.New(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}f[0]=i;$s=-1;case-1:}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};})(c,d,e,f),AN));d[0].send();g=$recv(c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g[0];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}h=$assertType($internalize(new($global.Uint8Array)(e[0]),$emptyInterface),AF);i=L.NewBuffer(h);k=F.Decode(i);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];f[0]=j[2];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}n=A.NewImageFromImage(l,b);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f[0]=m[1];if(!($interfaceIsEqual(f[0],$ifaceNil))){return[Y.nil,$ifaceNil,f[0]];}return[o,l,$ifaceNil];}return;}if($f===undefined){$f={$blk:X};}$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.$s=$s;$f.$r=$r;return $f;};$pkg.NewImageFromFile=X;$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=L.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$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=B.$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=C.$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=H.$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=D.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=C.Palette.nil;V();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["image/jpeg"]=(function(){var $pkg={},$init,E,F,B,C,D,A,H,J,L,M,O,R,S,AD,AF,AS,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BW,BX,BY,I,N,P,T,AE,AG,K,U,V,W,AH;E=$packages["bufio"];F=$packages["errors"];B=$packages["image"];C=$packages["image/color"];D=$packages["image/internal/imageutil"];A=$packages["io"];H=$pkg.huffman=$newType(0,$kindStruct,"jpeg.huffman","huffman","image/jpeg",function(nCodes_,lut_,vals_,minCodes_,maxCodes_,valsIndices_){this.$val=this;if(arguments.length===0){this.nCodes=0;this.lut=BF.zero();this.vals=BG.zero();this.minCodes=AW.zero();this.maxCodes=AW.zero();this.valsIndices=AW.zero();return;}this.nCodes=nCodes_;this.lut=lut_;this.vals=vals_;this.minCodes=minCodes_;this.maxCodes=maxCodes_;this.valsIndices=valsIndices_;});J=$pkg.block=$newType(256,$kindArray,"jpeg.block","block","image/jpeg",null);L=$pkg.FormatError=$newType(8,$kindString,"jpeg.FormatError","FormatError","image/jpeg",null);M=$pkg.UnsupportedError=$newType(8,$kindString,"jpeg.UnsupportedError","UnsupportedError","image/jpeg",null);O=$pkg.component=$newType(0,$kindStruct,"jpeg.component","component","image/jpeg",function(h_,v_,c_,tq_){this.$val=this;if(arguments.length===0){this.h=0;this.v=0;this.c=0;this.tq=0;return;}this.h=h_;this.v=v_;this.c=c_;this.tq=tq_;});R=$pkg.bits=$newType(0,$kindStruct,"jpeg.bits","bits","image/jpeg",function(a_,m_,n_){this.$val=this;if(arguments.length===0){this.a=0;this.m=0;this.n=0;return;}this.a=a_;this.m=m_;this.n=n_;});S=$pkg.decoder=$newType(0,$kindStruct,"jpeg.decoder","decoder","image/jpeg",function(r_,bits_,bytes_,width_,height_,img1_,img3_,blackPix_,blackStride_,ri_,nComp_,progressive_,jfif_,adobeTransformValid_,adobeTransform_,eobRun_,comp_,progCoeffs_,huff_,quant_,tmp_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.bits=new R.ptr(0,0,0);this.bytes=new BB.ptr(BA.zero(),0,0,0);this.width=0;this.height=0;this.img1=AX.nil;this.img3=AY.nil;this.blackPix=AV.nil;this.blackStride=0;this.ri=0;this.nComp=0;this.progressive=false;this.jfif=false;this.adobeTransformValid=false;this.adobeTransform=0;this.eobRun=0;this.comp=BC.zero();this.progCoeffs=BE.zero();this.huff=BI.zero();this.quant=BK.zero();this.tmp=BL.zero();return;}this.r=r_;this.bits=bits_;this.bytes=bytes_;this.width=width_;this.height=height_;this.img1=img1_;this.img3=img3_;this.blackPix=blackPix_;this.blackStride=blackStride_;this.ri=ri_;this.nComp=nComp_;this.progressive=progressive_;this.jfif=jfif_;this.adobeTransformValid=adobeTransformValid_;this.adobeTransform=adobeTransform_;this.eobRun=eobRun_;this.comp=comp_;this.progCoeffs=progCoeffs_;this.huff=huff_;this.quant=quant_;this.tmp=tmp_;});AD=$pkg.huffmanSpec=$newType(0,$kindStruct,"jpeg.huffmanSpec","huffmanSpec","image/jpeg",function(count_,value_){this.$val=this;if(arguments.length===0){this.count=AU.zero();this.value=AV.nil;return;}this.count=count_;this.value=value_;});AF=$pkg.huffmanLUT=$newType(12,$kindSlice,"jpeg.huffmanLUT","huffmanLUT","image/jpeg",null);AS=$arrayType(AF,4);AU=$arrayType($Uint8,16);AV=$sliceType($Uint8);AW=$arrayType($Int32,16);AX=$ptrType(B.Gray);AY=$ptrType(B.YCbCr);AZ=$structType([{prop:"src",name:"src",pkg:"image/jpeg",typ:AV,tag:""},{prop:"stride",name:"stride",pkg:"image/jpeg",typ:$Int,tag:""}]);BA=$arrayType($Uint8,4096);BB=$structType([{prop:"buf",name:"buf",pkg:"image/jpeg",typ:BA,tag:""},{prop:"i",name:"i",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"j",name:"j",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nUnreadable",name:"nUnreadable",pkg:"image/jpeg",typ:$Int,tag:""}]);BC=$arrayType(O,4);BD=$sliceType(J);BE=$arrayType(BD,4);BF=$arrayType($Uint16,256);BG=$arrayType($Uint8,256);BH=$arrayType(H,4);BI=$arrayType(BH,2);BJ=$arrayType($Int32,64);BK=$arrayType(J,4);BL=$arrayType($Uint8,128);BM=$structType([{prop:"compIndex",name:"compIndex",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"td",name:"td",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"ta",name:"ta",pkg:"image/jpeg",typ:$Uint8,tag:""}]);BN=$arrayType(BM,4);BO=$sliceType(O);BP=$arrayType($Int32,4);BQ=$sliceType($Uint32);BR=$ptrType(AF);BW=$ptrType(H);BX=$ptrType(J);BY=$ptrType(S);S.ptr.prototype.ensureNBits=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;case 1:d=b.readByteStuffedByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){if($interfaceIsEqual(f,A.EOF)){return new L(I);}return f;}b.bits.a=((b.bits.a<<8>>>0)|(e>>>0))>>>0;b.bits.n=b.bits.n+(8)>>0;if(b.bits.m===0){b.bits.m=128;}else{b.bits.m=(g=(8),g<32?(b.bits.m<>>0;}if(b.bits.n>=a){$s=2;continue;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ensureNBits};}$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;};S.prototype.ensureNBits=function(a){return this.$val.ensureNBits(a);};S.ptr.prototype.receiveExtend=function(a){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:b=this;if(b.bits.n<(a>>0)){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits((a>>0));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[0,d];case 5:case 2:b.bits.n=b.bits.n-((a>>0))>>0;b.bits.m=(e=(a),e<32?(b.bits.m>>>e):0)>>>0;g=(f=a,f<32?(1<>0;i=(((h=(b.bits.n<<24>>>24),h<32?(b.bits.a>>>h):0)>>>0)>>0)&((g-1>>0));if(i<(g>>1>>0)){i=i+(((((j=a,j<32?(-1<>0))+1>>0))>>0;}return[i,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.receiveExtend};}$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;};S.prototype.receiveExtend=function(a){return this.$val.receiveExtend(a);};S.ptr.prototype.processDHT=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,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;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;case 1:if(!(a>0)){$s=2;continue;}if(a<17){return new L("DHT has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,17));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return d;case 5:e=b.tmp[0]>>>4<<24>>>24;if(e>1){return new L("bad Tc value");}f=(b.tmp[0]&15)>>>0;if(f>3||!b.progressive&&f>1){return new L("bad Th value");}i=(g=(h=b.huff,((e<0||e>=h.length)?$throwRuntimeError("index out of range"):h[e])),((f<0||f>=g.length)?$throwRuntimeError("index out of range"):g[f]));i.nCodes=0;j=AW.zero();k=j;l=0;while(true){if(!(l<16)){break;}m=l;((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]=((n=b.tmp,o=m+1>>0,((o<0||o>=n.length)?$throwRuntimeError("index out of range"):n[o]))>>0));i.nCodes=i.nCodes+(((m<0||m>=j.length)?$throwRuntimeError("index out of range"):j[m]))>>0;l++;}if(i.nCodes===0){return new L("Huffman table has zero length");}if(i.nCodes>256){return new L("Huffman table has excessive length");}a=a-(((i.nCodes>>0)+17>>0))>>0;if(a<0){return new L("DHT has wrong length");}p=b.readFull($subslice(new AV(i.vals),0,i.nCodes));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(!($interfaceIsEqual(q,$ifaceNil))){$s=7;continue;}$s=8;continue;case 7:return q;case 8:r=i.lut;s=0;while(true){if(!(s<256)){break;}t=s;(u=i.lut,((t<0||t>=u.length)?$throwRuntimeError("index out of range"):u[t]=0));s++;}v=0;w=0;x=v;y=w;z=0;while(true){if(!(z<8)){break;}y=(aa=(1),aa<32?(y<>>0;ab=0;while(true){if(!(ab<((z<0||z>=j.length)?$throwRuntimeError("index out of range"):j[z]))){break;}ad=(((ac=((7-z>>>0)),ac<32?(y<>>0)<<24>>>24);af=((((ae=i.vals,((x<0||x>=ae.length)?$throwRuntimeError("index out of range"):ae[x]))<<16>>>16)<<8<<16>>>16)|((2+z>>>0)<<16>>>16))>>>0;ag=0;while(true){if(!(ag<((ah=((7-z>>>0)),ah<32?(1<>>24))){break;}(ai=i.lut,aj=(ad|ag)>>>0,((aj<0||aj>=ai.length)?$throwRuntimeError("index out of range"):ai[aj]=af));ag=ag+(1)<<24>>>24;}y=y+(1)>>>0;x=x+(1)>>>0;ab=ab+(1)>>0;}z=z+(1)>>>0;}ak=0;al=0;am=ak;an=al;ao=j;ap=0;while(true){if(!(ap<16)){break;}aq=ap;ar=((ap<0||ap>=ao.length)?$throwRuntimeError("index out of range"):ao[ap]);if(ar===0){(as=i.minCodes,((aq<0||aq>=as.length)?$throwRuntimeError("index out of range"):as[aq]=-1));(at=i.maxCodes,((aq<0||aq>=at.length)?$throwRuntimeError("index out of range"):at[aq]=-1));(au=i.valsIndices,((aq<0||aq>=au.length)?$throwRuntimeError("index out of range"):au[aq]=-1));}else{(av=i.minCodes,((aq<0||aq>=av.length)?$throwRuntimeError("index out of range"):av[aq]=am));(aw=i.maxCodes,((aq<0||aq>=aw.length)?$throwRuntimeError("index out of range"):aw[aq]=((am+ar>>0)-1>>0)));(ax=i.valsIndices,((aq<0||aq>=ax.length)?$throwRuntimeError("index out of range"):ax[aq]=an));am=am+(ar)>>0;an=an+(ar)>>0;}am=(ay=(1),ay<32?(am<>0;ap++;}$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDHT};}$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.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.processDHT=function(a){return this.$val.processDHT(a);};S.ptr.prototype.decodeHuffman=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,$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;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(a.nCodes===0){return[0,new L("uninitialized Huffman table")];}if(b.bits.n<8){$s=1;continue;}$s=2;continue;case 1:c=b.ensureNBits(8);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(d,new L(T)))&&!($interfaceIsEqual(d,new L(I)))){return[0,d];}if(!((b.bytes.nUnreadable===0))){b.unreadByteStuffedByte();}$s=6;continue;case 5:case 2:h=(e=a.lut,f=((((g=((b.bits.n-8>>0)>>>0),g<32?(b.bits.a>>>g):0)>>>0))&255)>>>0,((f<0||f>=e.length)?$throwRuntimeError("index out of range"):e[f]));if(!((h===0))){i=(((h&255)>>>0))-1<<16>>>16;b.bits.n=b.bits.n-((i>>0))>>0;b.bits.m=(j=(i),j<32?(b.bits.m>>>j):0)>>>0;return[((h>>>8<<16>>>16)<<24>>>24),$ifaceNil];}case 6:k=0;l=0;m=k;n=l;case 7:if(!(m<16)){$s=8;continue;}if(b.bits.n===0){$s=9;continue;}$s=10;continue;case 9:o=b.ensureNBits(1);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return[0,p];case 13:case 10:if(!((((b.bits.a&b.bits.m)>>>0)===0))){n=n|(1);}b.bits.n=b.bits.n-(1)>>0;b.bits.m=(q=(1),q<32?(b.bits.m>>>q):0)>>>0;if(n<=(r=a.maxCodes,((m<0||m>=r.length)?$throwRuntimeError("index out of range"):r[m]))){return[(s=a.vals,t=((u=a.valsIndices,((m<0||m>=u.length)?$throwRuntimeError("index out of range"):u[m]))+n>>0)-(v=a.minCodes,((m<0||m>=v.length)?$throwRuntimeError("index out of range"):v[m]))>>0,((t<0||t>=s.length)?$throwRuntimeError("index out of range"):s[t])),$ifaceNil];}n=(w=(1),w<32?(n<>0;m=m+(1)>>0;$s=7;continue;case 8:return[0,new L("bad Huffman code")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeHuffman};}$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.$s=$s;$f.$r=$r;return $f;};S.prototype.decodeHuffman=function(a){return this.$val.decodeHuffman(a);};S.ptr.prototype.decodeBit=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.bits.n===0){$s=1;continue;}$s=2;continue;case 1:b=a.ensureNBits(1);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(c,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:return[false,c];case 5:case 2:d=!((((a.bits.a&a.bits.m)>>>0)===0));a.bits.n=a.bits.n-(1)>>0;a.bits.m=(e=(1),e<32?(a.bits.m>>>e):0)>>>0;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBit};}$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;};S.prototype.decodeBit=function(){return this.$val.decodeBit();};S.ptr.prototype.decodeBits=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;if(b.bits.n>0)>>>0),e<32?(b.bits.a>>>e):0)>>>0;f=(f&(((((g=(a>>>0),g<32?(1<>>0))-1>>>0)))>>>0;b.bits.n=b.bits.n-(a)>>0;b.bits.m=(h=((a>>>0)),h<32?(b.bits.m>>>h):0)>>>0;return[f,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decodeBits};}$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;};S.prototype.decodeBits=function(a){return this.$val.decodeBits(a);};K=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,bq,br,bs,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;while(true){if(!(b<8)){break;}c=$imul(b,8);if(((d=c+1>>0,(a.nilCheck,((d<0||d>=a.length)?$throwRuntimeError("index out of range"):a[d])))===0)&&((e=c+2>>0,(a.nilCheck,((e<0||e>=a.length)?$throwRuntimeError("index out of range"):a[e])))===0)&&((f=c+3>>0,(a.nilCheck,((f<0||f>=a.length)?$throwRuntimeError("index out of range"):a[f])))===0)&&((g=c+4>>0,(a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g])))===0)&&((h=c+5>>0,(a.nilCheck,((h<0||h>=a.length)?$throwRuntimeError("index out of range"):a[h])))===0)&&((i=c+6>>0,(a.nilCheck,((i<0||i>=a.length)?$throwRuntimeError("index out of range"):a[i])))===0)&&((j=c+7>>0,(a.nilCheck,((j<0||j>=a.length)?$throwRuntimeError("index out of range"):a[j])))===0)){l=(k=c+0>>0,(a.nilCheck,((k<0||k>=a.length)?$throwRuntimeError("index out of range"):a[k])))<<3>>0;(m=c+0>>0,a.nilCheck,((m<0||m>=a.length)?$throwRuntimeError("index out of range"):a[m]=l));(n=c+1>>0,a.nilCheck,((n<0||n>=a.length)?$throwRuntimeError("index out of range"):a[n]=l));(o=c+2>>0,a.nilCheck,((o<0||o>=a.length)?$throwRuntimeError("index out of range"):a[o]=l));(p=c+3>>0,a.nilCheck,((p<0||p>=a.length)?$throwRuntimeError("index out of range"):a[p]=l));(q=c+4>>0,a.nilCheck,((q<0||q>=a.length)?$throwRuntimeError("index out of range"):a[q]=l));(r=c+5>>0,a.nilCheck,((r<0||r>=a.length)?$throwRuntimeError("index out of range"):a[r]=l));(s=c+6>>0,a.nilCheck,((s<0||s>=a.length)?$throwRuntimeError("index out of range"):a[s]=l));(t=c+7>>0,a.nilCheck,((t<0||t>=a.length)?$throwRuntimeError("index out of range"):a[t]=l));b=b+(1)>>0;continue;}v=(((u=c+0>>0,(a.nilCheck,((u<0||u>=a.length)?$throwRuntimeError("index out of range"):a[u])))<<11>>0))+128>>0;x=(w=c+4>>0,(a.nilCheck,((w<0||w>=a.length)?$throwRuntimeError("index out of range"):a[w])))<<11>>0;z=(y=c+6>>0,(a.nilCheck,((y<0||y>=a.length)?$throwRuntimeError("index out of range"):a[y])));ab=(aa=c+2>>0,(a.nilCheck,((aa<0||aa>=a.length)?$throwRuntimeError("index out of range"):a[aa])));ad=(ac=c+1>>0,(a.nilCheck,((ac<0||ac>=a.length)?$throwRuntimeError("index out of range"):a[ac])));af=(ae=c+7>>0,(a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae])));ah=(ag=c+5>>0,(a.nilCheck,((ag<0||ag>=a.length)?$throwRuntimeError("index out of range"):a[ag])));aj=(ai=c+3>>0,(a.nilCheck,((ai<0||ai>=a.length)?$throwRuntimeError("index out of range"):a[ai])));ak=$imul(565,((ad+af>>0)));ad=ak+($imul(2276,ad))>>0;af=ak-($imul(3406,af))>>0;ak=$imul(2408,((ah+aj>>0)));ah=ak-($imul(799,ah))>>0;aj=ak-($imul(4017,aj))>>0;ak=v+x>>0;v=v-(x)>>0;x=$imul(1108,((ab+z>>0)));z=x-($imul(3784,z))>>0;ab=x+($imul(1568,ab))>>0;x=ad+ah>>0;ad=ad-(ah)>>0;ah=af+aj>>0;af=af-(aj)>>0;aj=ak+ab>>0;ak=ak-(ab)>>0;ab=v+z>>0;v=v-(z)>>0;z=((($imul(181,((ad+af>>0))))+128>>0))>>8>>0;ad=((($imul(181,((ad-af>>0))))+128>>0))>>8>>0;(al=c+0>>0,a.nilCheck,((al<0||al>=a.length)?$throwRuntimeError("index out of range"):a[al]=(((aj+x>>0))>>8>>0)));(am=c+1>>0,a.nilCheck,((am<0||am>=a.length)?$throwRuntimeError("index out of range"):a[am]=(((ab+z>>0))>>8>>0)));(an=c+2>>0,a.nilCheck,((an<0||an>=a.length)?$throwRuntimeError("index out of range"):a[an]=(((v+ad>>0))>>8>>0)));(ao=c+3>>0,a.nilCheck,((ao<0||ao>=a.length)?$throwRuntimeError("index out of range"):a[ao]=(((ak+ah>>0))>>8>>0)));(ap=c+4>>0,a.nilCheck,((ap<0||ap>=a.length)?$throwRuntimeError("index out of range"):a[ap]=(((ak-ah>>0))>>8>>0)));(aq=c+5>>0,a.nilCheck,((aq<0||aq>=a.length)?$throwRuntimeError("index out of range"):a[aq]=(((v-ad>>0))>>8>>0)));(ar=c+6>>0,a.nilCheck,((ar<0||ar>=a.length)?$throwRuntimeError("index out of range"):a[ar]=(((ab-z>>0))>>8>>0)));(as=c+7>>0,a.nilCheck,((as<0||as>=a.length)?$throwRuntimeError("index out of range"):a[as]=(((aj-x>>0))>>8>>0)));b=b+(1)>>0;}at=0;while(true){if(!(at<8)){break;}av=(((au=0+at>>0,(a.nilCheck,((au<0||au>=a.length)?$throwRuntimeError("index out of range"):a[au])))<<8>>0))+8192>>0;ax=(aw=32+at>>0,(a.nilCheck,((aw<0||aw>=a.length)?$throwRuntimeError("index out of range"):a[aw])))<<8>>0;az=(ay=48+at>>0,(a.nilCheck,((ay<0||ay>=a.length)?$throwRuntimeError("index out of range"):a[ay])));bb=(ba=16+at>>0,(a.nilCheck,((ba<0||ba>=a.length)?$throwRuntimeError("index out of range"):a[ba])));bd=(bc=8+at>>0,(a.nilCheck,((bc<0||bc>=a.length)?$throwRuntimeError("index out of range"):a[bc])));bf=(be=56+at>>0,(a.nilCheck,((be<0||be>=a.length)?$throwRuntimeError("index out of range"):a[be])));bh=(bg=40+at>>0,(a.nilCheck,((bg<0||bg>=a.length)?$throwRuntimeError("index out of range"):a[bg])));bj=(bi=24+at>>0,(a.nilCheck,((bi<0||bi>=a.length)?$throwRuntimeError("index out of range"):a[bi])));bk=($imul(565,((bd+bf>>0))))+4>>0;bd=((bk+($imul(2276,bd))>>0))>>3>>0;bf=((bk-($imul(3406,bf))>>0))>>3>>0;bk=($imul(2408,((bh+bj>>0))))+4>>0;bh=((bk-($imul(799,bh))>>0))>>3>>0;bj=((bk-($imul(4017,bj))>>0))>>3>>0;bk=av+ax>>0;av=av-(ax)>>0;ax=($imul(1108,((bb+az>>0))))+4>>0;az=((ax-($imul(3784,az))>>0))>>3>>0;bb=((ax+($imul(1568,bb))>>0))>>3>>0;ax=bd+bh>>0;bd=bd-(bh)>>0;bh=bf+bj>>0;bf=bf-(bj)>>0;bj=bk+bb>>0;bk=bk-(bb)>>0;bb=av+az>>0;av=av-(az)>>0;az=((($imul(181,((bd+bf>>0))))+128>>0))>>8>>0;bd=((($imul(181,((bd-bf>>0))))+128>>0))>>8>>0;(bl=0+at>>0,a.nilCheck,((bl<0||bl>=a.length)?$throwRuntimeError("index out of range"):a[bl]=(((bj+ax>>0))>>14>>0)));(bm=8+at>>0,a.nilCheck,((bm<0||bm>=a.length)?$throwRuntimeError("index out of range"):a[bm]=(((bb+az>>0))>>14>>0)));(bn=16+at>>0,a.nilCheck,((bn<0||bn>=a.length)?$throwRuntimeError("index out of range"):a[bn]=(((av+bd>>0))>>14>>0)));(bo=24+at>>0,a.nilCheck,((bo<0||bo>=a.length)?$throwRuntimeError("index out of range"):a[bo]=(((bk+bh>>0))>>14>>0)));(bp=32+at>>0,a.nilCheck,((bp<0||bp>=a.length)?$throwRuntimeError("index out of range"):a[bp]=(((bk-bh>>0))>>14>>0)));(bq=40+at>>0,a.nilCheck,((bq<0||bq>=a.length)?$throwRuntimeError("index out of range"):a[bq]=(((av-bd>>0))>>14>>0)));(br=48+at>>0,a.nilCheck,((br<0||br>=a.length)?$throwRuntimeError("index out of range"):a[br]=(((bb-az>>0))>>14>>0)));(bs=56+at>>0,a.nilCheck,((bs<0||bs>=a.length)?$throwRuntimeError("index out of range"):a[bs]=(((bj-ax>>0))>>14>>0)));at=at+(1)>>0;}};L.prototype.Error=function(){var $ptr,a;a=this.$val;return"invalid JPEG format: "+a;};$ptrType(L).prototype.Error=function(){return new L(this.$get()).Error();};M.prototype.Error=function(){var $ptr,a;a=this.$val;return"unsupported JPEG feature: "+a;};$ptrType(M).prototype.Error=function(){return new M(this.$get()).Error();};S.ptr.prototype.fill=function(){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:a=this;if(!((a.bytes.i===a.bytes.j))){$panic(new $String("jpeg: fill called when unread bytes exist"));}if(a.bytes.j>2){a.bytes.buf[0]=(b=a.bytes.buf,c=a.bytes.j-2>>0,((c<0||c>=b.length)?$throwRuntimeError("index out of range"):b[c]));a.bytes.buf[1]=(d=a.bytes.buf,e=a.bytes.j-1>>0,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));f=2;g=2;a.bytes.i=f;a.bytes.j=g;}i=a.r.Read($subslice(new AV(a.bytes.buf),a.bytes.j));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];a.bytes.j=a.bytes.j+(j)>>0;if(j>0){k=$ifaceNil;}return k;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.fill};}$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;};S.prototype.fill=function(){return this.$val.fill();};S.ptr.prototype.unreadByteStuffedByte=function(){var $ptr,a,b,c;a=this;a.bytes.i=a.bytes.i-(a.bytes.nUnreadable)>>0;a.bytes.nUnreadable=0;if(a.bits.n>=8){a.bits.a=(b=(8),b<32?(a.bits.a>>>b):0)>>>0;a.bits.n=a.bits.n-(8)>>0;a.bits.m=(c=(8),c<32?(a.bits.m>>>c):0)>>>0;}};S.prototype.unreadByteStuffedByte=function(){return this.$val.unreadByteStuffedByte();};S.ptr.prototype.readByte=function(){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:a=0;b=$ifaceNil;c=this;case 1:if(!(c.bytes.i===c.bytes.j)){$s=2;continue;}d=c.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(b,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:e=0;f=b;a=e;b=f;return[a,b];case 5:$s=1;continue;case 2:a=(g=c.bytes.buf,h=c.bytes.i,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=0;i=a;j=$ifaceNil;a=i;b=j;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByte};}$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;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.readByteStuffedByte=function(){var $ptr,a,aa,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;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=0;b=$ifaceNil;c=this;if((c.bytes.i+2>>0)<=c.bytes.j){a=(d=c.bytes.buf,e=c.bytes.i,((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]));c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=1;if(!((a===255))){f=a;g=b;a=f;b=g;return[a,b];}if(!(((h=c.bytes.buf,i=c.bytes.i,((i<0||i>=h.length)?$throwRuntimeError("index out of range"):h[i]))===0))){j=0;k=new L(T);a=j;b=k;return[a,b];}c.bytes.i=c.bytes.i+(1)>>0;c.bytes.nUnreadable=2;l=255;m=$ifaceNil;a=l;b=m;return[a,b];}c.bytes.nUnreadable=0;o=c.readByte();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;a=n[0];b=n[1];if(!($interfaceIsEqual(b,$ifaceNil))){p=0;q=b;a=p;b=q;return[a,b];}c.bytes.nUnreadable=1;if(!((a===255))){r=a;s=$ifaceNil;a=r;b=s;return[a,b];}u=c.readByte();$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;a=t[0];b=t[1];if(!($interfaceIsEqual(b,$ifaceNil))){v=0;w=b;a=v;b=w;return[a,b];}c.bytes.nUnreadable=2;if(!((a===0))){x=0;y=new L(T);a=x;b=y;return[a,b];}z=255;aa=$ifaceNil;a=z;b=aa;return[a,b];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readByteStuffedByte};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$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.readByteStuffedByte=function(){return this.$val.readByteStuffedByte();};S.ptr.prototype.readFull=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=$copySlice(a,$subslice(new AV(b.bytes.buf),b.bytes.i,b.bytes.j));a=$subslice(a,c);b.bytes.i=b.bytes.i+(c)>>0;if(a.$length===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.readFull};}$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;};S.prototype.readFull=function(a){return this.$val.readFull(a);};S.ptr.prototype.ignore=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;if(!((b.bytes.nUnreadable===0))){if(b.bits.n>=8){b.unreadByteStuffedByte();}b.bytes.nUnreadable=0;}case 1:c=b.bytes.j-b.bytes.i>>0;if(c>a){c=a;}b.bytes.i=b.bytes.i+(c)>>0;a=a-(c)>>0;if(a===0){$s=2;continue;}d=b.fill();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if($interfaceIsEqual(e,A.EOF)){e=A.ErrUnexpectedEOF;}return e;case 5:$s=1;continue;case 2:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.ignore};}$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;};S.prototype.ignore=function(a){return this.$val.ignore(a);};S.ptr.prototype.processSOF=function(a){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,$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;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;if(!((b.nComp===0))){return new L("multiple SOF markers");}c=a;if(c===9){b.nComp=1;}else if(c===15){b.nComp=3;}else if(c===18){b.nComp=4;}else{return new M("number of components");}d=b.readFull($subslice(new AV(b.tmp),0,a));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return e;case 3:if(!((b.tmp[0]===8))){return new M("precision");}b.height=((b.tmp[1]>>0)<<8>>0)+(b.tmp[2]>>0)>>0;b.width=((b.tmp[3]>>0)<<8>>0)+(b.tmp[4]>>0)>>0;if(!(((b.tmp[5]>>0)===b.nComp))){return new L("SOF has wrong length");}f=0;while(true){if(!(f=i.length)?$throwRuntimeError("index out of range"):i[f])).c=(g=b.tmp,h=6+($imul(3,f))>>0,((h<0||h>=g.length)?$throwRuntimeError("index out of range"):g[h]));j=0;while(true){if(!(j=k.length)?$throwRuntimeError("index out of range"):k[f])).c===(l=b.comp,((j<0||j>=l.length)?$throwRuntimeError("index out of range"):l[j])).c){return new L("repeated component identifier");}j=j+(1)>>0;}(o=b.comp,((f<0||f>=o.length)?$throwRuntimeError("index out of range"):o[f])).tq=(m=b.tmp,n=8+($imul(3,f))>>0,((n<0||n>=m.length)?$throwRuntimeError("index out of range"):m[n]));if((p=b.comp,((f<0||f>=p.length)?$throwRuntimeError("index out of range"):p[f])).tq>3){return new L("bad Tq value");}s=(q=b.tmp,r=7+($imul(3,f))>>0,((r<0||r>=q.length)?$throwRuntimeError("index out of range"):q[r]));t=((s>>>4<<24>>>24)>>0);u=(((s&15)>>>0)>>0);v=t;w=u;if(v<1||4=ae.length)?$throwRuntimeError("index out of range"):ae[f])).h=v;(af=b.comp,((f<0||f>=af.length)?$throwRuntimeError("index out of range"):af[f])).v=w;f=f+(1)>>0;}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOF};}$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.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.processSOF=function(a){return this.$val.processSOF(a);};S.ptr.prototype.processDQT=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;case 1:if(!(a>0)){$s=2;continue;}a=a-(1)>>0;d=b.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];if(!($interfaceIsEqual(f,$ifaceNil))){return f;}g=(e&15)>>>0;if(g>3){return new L("bad Tq value");}h=e>>>4<<24>>>24;if(h===0){$s=4;continue;}if(h===1){$s=5;continue;}$s=6;continue;case 4:if(a<64){$s=2;continue s;}a=a-(64)>>0;i=b.readFull($subslice(new AV(b.tmp),0,64));$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=9;continue;}$s=10;continue;case 9:return j;case 10:k=(l=b.quant,((g<0||g>=l.length)?$throwRuntimeError("index out of range"):l[g]));m=0;while(true){if(!(m<64)){break;}n=m;(p=(q=b.quant,((g<0||g>=q.length)?$throwRuntimeError("index out of range"):q[g])),((n<0||n>=p.length)?$throwRuntimeError("index out of range"):p[n]=((o=b.tmp,((n<0||n>=o.length)?$throwRuntimeError("index out of range"):o[n]))>>0)));m++;}$s=7;continue;case 5:if(a<128){$s=2;continue s;}a=a-(128)>>0;r=b.readFull($subslice(new AV(b.tmp),0,128));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=12;continue;}$s=13;continue;case 12:return s;case 13:t=(u=b.quant,((g<0||g>=u.length)?$throwRuntimeError("index out of range"):u[g]));v=0;while(true){if(!(v<64)){break;}w=v;(ab=(ac=b.quant,((g<0||g>=ac.length)?$throwRuntimeError("index out of range"):ac[g])),((w<0||w>=ab.length)?$throwRuntimeError("index out of range"):ab[w]=((((x=b.tmp,y=$imul(2,w),((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))>>0)<<8>>0)|((z=b.tmp,aa=($imul(2,w))+1>>0,((aa<0||aa>=z.length)?$throwRuntimeError("index out of range"):z[aa]))>>0))));v++;}$s=7;continue;case 6:return new L("bad Pq value");case 7:$s=1;continue;case 2:if(!((a===0))){return new L("DQT has wrong length");}return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDQT};}$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;};S.prototype.processDQT=function(a){return this.$val.processDQT(a);};S.ptr.prototype.processDRI=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;if(!((a===2))){return new L("DRI has wrong length");}c=b.readFull($subslice(new AV(b.tmp),0,2));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(d,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return d;case 3:b.ri=((b.tmp[0]>>0)<<8>>0)+(b.tmp[1]>>0)>>0;return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processDRI};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.processDRI=function(a){return this.$val.processDRI(a);};S.ptr.prototype.processApp0Marker=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;if(a<5){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,5));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(5)>>0;b.jfif=(b.tmp[0]===74)&&(b.tmp[1]===70)&&(b.tmp[2]===73)&&(b.tmp[3]===70)&&(b.tmp[4]===0);if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp0Marker};}$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;};S.prototype.processApp0Marker=function(a){return this.$val.processApp0Marker(a);};S.ptr.prototype.processApp14Marker=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;if(a<12){$s=1;continue;}$s=2;continue;case 1:c=b.ignore(a);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=4;case 4:return c;case 2:d=b.readFull($subslice(new AV(b.tmp),0,12));$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:return e;case 7:a=a-(12)>>0;if((b.tmp[0]===65)&&(b.tmp[1]===100)&&(b.tmp[2]===111)&&(b.tmp[3]===98)&&(b.tmp[4]===101)){b.adobeTransformValid=true;b.adobeTransform=b.tmp[11];}if(a>0){$s=8;continue;}$s=9;continue;case 8:f=b.ignore(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=11;case 11:return f;case 9:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processApp14Marker};}$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;};S.prototype.processApp14Marker=function(a){return this.$val.processApp14Marker(a);};S.ptr.prototype.decode=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,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;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;c.r=a;d=c.readFull($subslice(new AV(c.tmp),0,2));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[$ifaceNil,e];case 3:if(!((c.tmp[0]===255))||!((c.tmp[1]===216))){return[$ifaceNil,new L("missing SOI marker")];}case 4:f=c.readFull($subslice(new AV(c.tmp),0,2));$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}case 7:if(!(!((c.tmp[0]===255)))){$s=8;continue;}c.tmp[0]=c.tmp[1];i=c.readByte();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c.tmp[1]=h[0];g=h[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=7;continue;case 8:j=c.tmp[1];if(j===0){$s=10;continue;}$s=11;continue;case 10:$s=4;continue;case 11:case 12:if(!(j===255)){$s=13;continue;}l=c.readByte();$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];g=k[1];if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=12;continue;case 13:if(j===217){$s=5;continue;}if(208<=j&&j<=215){$s=15;continue;}$s=16;continue;case 15:$s=4;continue;case 16:m=c.readFull($subslice(new AV(c.tmp),0,2));$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}g=m;if(!($interfaceIsEqual(g,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:return[$ifaceNil,g];case 19:n=(((c.tmp[0]>>0)<<8>>0)+(c.tmp[1]>>0)>>0)-2>>0;if(n<0){return[$ifaceNil,new L("short segment length")];}o=j;if(o===192||o===193||o===194){$s=20;continue;}if(o===196){$s=21;continue;}if(o===219){$s=22;continue;}if(o===218){$s=23;continue;}if(o===221){$s=24;continue;}if(o===224){$s=25;continue;}if(o===238){$s=26;continue;}$s=27;continue;case 20:c.progressive=j===194;p=c.processSOF(n);$s=29;case 29:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}g=p;if(b&&c.jfif){return[$ifaceNil,g];}$s=28;continue;case 21:if(b){$s=30;continue;}$s=31;continue;case 30:q=c.ignore(n);$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}g=q;$s=32;continue;case 31:r=c.processDHT(n);$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 32:$s=28;continue;case 22:if(b){$s=35;continue;}$s=36;continue;case 35:s=c.ignore(n);$s=38;case 38:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}g=s;$s=37;continue;case 36:t=c.processDQT(n);$s=39;case 39:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}g=t;case 37:$s=28;continue;case 23:if(b){return[$ifaceNil,$ifaceNil];}u=c.processSOS(n);$s=40;case 40:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}g=u;$s=28;continue;case 24:if(b){$s=41;continue;}$s=42;continue;case 41:v=c.ignore(n);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}g=v;$s=43;continue;case 42:w=c.processDRI(n);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}g=w;case 43:$s=28;continue;case 25:x=c.processApp0Marker(n);$s=46;case 46:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}g=x;$s=28;continue;case 26:y=c.processApp14Marker(n);$s=47;case 47:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}g=y;$s=28;continue;case 27:if(224<=j&&j<=239||(j===254)){$s=48;continue;}if(j<192){$s=49;continue;}$s=50;continue;case 48:z=c.ignore(n);$s=52;case 52:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}g=z;$s=51;continue;case 49:g=new L("unknown marker");$s=51;continue;case 50:g=new M("unknown marker");case 51:case 28:if(!($interfaceIsEqual(g,$ifaceNil))){return[$ifaceNil,g];}$s=4;continue;case 5:if(!(c.img1===AX.nil)){return[c.img1,$ifaceNil];}if(!(c.img3===AY.nil)){if(!(c.blackPix===AV.nil)){return c.applyBlack();}else if(c.isRGB()){return c.convertToRGB();}return[c.img3,$ifaceNil];}return[$ifaceNil,new L("missing SOS marker")];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.decode};}$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.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.decode=function(a,b){return this.$val.decode(a,b);};S.ptr.prototype.applyBlack=function(){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;a=this;if(!a.adobeTransformValid){return[$ifaceNil,new M("unknown color model: 4-component JPEG doesn't have Adobe APP14 metadata")];}if(!((a.adobeTransform===0))){b=$clone(a.img3.Bounds(),B.Rectangle);c=B.NewRGBA(b);D.DrawYCbCr(c,b,a.img3,b.Min);d=0;e=b.Min.Y;f=d;g=e;while(true){if(!(g>0;i=b.Min.X;j=h;k=i;while(true){if(!(k=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+j]=(255-(l=a.blackPix,m=($imul(((g-b.Min.Y>>0)),a.blackStride))+((k-b.Min.X>>0))>>0,((m<0||m>=l.$length)?$throwRuntimeError("index out of range"):l.$array[l.$offset+m]))<<24>>>24)));o=j+4>>0;p=k+1>>0;j=o;k=p;}q=f+c.Stride>>0;r=g+1>>0;f=q;g=r;}return[new B.CMYK.ptr(c.Pix,c.Stride,$clone(c.Rect,B.Rectangle)),$ifaceNil];}s=$clone(a.img3.Bounds(),B.Rectangle);t=B.NewCMYK(s);u=$toNativeArray($kindStruct,[new AZ.ptr(a.img3.Y,a.img3.YStride),new AZ.ptr(a.img3.Cb,a.img3.CStride),new AZ.ptr(a.img3.Cr,a.img3.CStride),new AZ.ptr(a.blackPix,a.blackStride)]);v=u;w=0;while(true){if(!(w<4)){break;}x=w;y=$clone(((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]),AZ);ab=!(((z=a.comp,((x<0||x>=z.length)?$throwRuntimeError("index out of range"):z[x])).h===a.comp[0].h))||!(((aa=a.comp,((x<0||x>=aa.length)?$throwRuntimeError("index out of range"):aa[x])).v===a.comp[0].v));ac=0;ad=s.Min.Y;ae=ac;af=ad;while(true){if(!(af>0;if(ab){ag=(ah=ag/(2),(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero"));}ai=ae+x>>0;aj=s.Min.X;ak=ai;al=aj;while(true){if(!(al>0;if(ab){am=(an=am/(2),(an===an&&an!==1/0&&an!==-1/0)?an>>0:$throwRuntimeError("integer divide by zero"));}(aq=t.Pix,((ak<0||ak>=aq.$length)?$throwRuntimeError("index out of range"):aq.$array[aq.$offset+ak]=(255-(ao=y.src,ap=($imul(ag,y.stride))+am>>0,((ap<0||ap>=ao.$length)?$throwRuntimeError("index out of range"):ao.$array[ao.$offset+ap]))<<24>>>24)));ar=ak+4>>0;as=al+1>>0;ak=ar;al=as;}at=ae+t.Stride>>0;au=af+1>>0;ae=at;af=au;}w++;}return[t,$ifaceNil];};S.prototype.applyBlack=function(){return this.$val.applyBlack();};S.ptr.prototype.isRGB=function(){var $ptr,a;a=this;if(a.jfif){return false;}if(a.adobeTransformValid&&(a.adobeTransform===0)){return true;}return(a.comp[0].c===82)&&(a.comp[1].c===71)&&(a.comp[2].c===66);};S.prototype.isRGB=function(){return this.$val.isRGB();};S.ptr.prototype.convertToRGB=function(){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;a=this;c=(b=a.comp[0].h/a.comp[1].h,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));d=$clone(a.img3.Bounds(),B.Rectangle);e=B.NewRGBA(d);f=d.Min.Y;while(true){if(!(f>0;l=j;m=k;while(true){if(!(l>0)+0>>0,((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=(n=a.img3.Y,o=h+l>>0,((o<0||o>=n.$length)?$throwRuntimeError("index out of range"):n.$array[n.$offset+o]))));(u=e.Pix,v=(g+($imul(4,l))>>0)+1>>0,((v<0||v>=u.$length)?$throwRuntimeError("index out of range"):u.$array[u.$offset+v]=(r=a.img3.Cb,s=i+(t=l/c,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"))>>0,((s<0||s>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+s]))));(z=e.Pix,aa=(g+($imul(4,l))>>0)+2>>0,((aa<0||aa>=z.$length)?$throwRuntimeError("index out of range"):z.$array[z.$offset+aa]=(w=a.img3.Cr,x=i+(y=l/c,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0,((x<0||x>=w.$length)?$throwRuntimeError("index out of range"):w.$array[w.$offset+x]))));(ab=e.Pix,ac=(g+($imul(4,l))>>0)+3>>0,((ac<0||ac>=ab.$length)?$throwRuntimeError("index out of range"):ab.$array[ab.$offset+ac]=255));l=l+(1)>>0;}f=f+(1)>>0;}return[e,$ifaceNil];};S.prototype.convertToRGB=function(){return this.$val.convertToRGB();};U=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());c=b.decode(a,false);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=2;case 2:return c;}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=U;V=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=new S.ptr($ifaceNil,new R.ptr(0,0,0),new BB.ptr(BA.zero(),0,0,0),0,0,AX.nil,AY.nil,AV.nil,0,0,0,false,false,false,0,0,BC.zero(),BE.zero(),BI.zero(),BK.zero(),BL.zero());d=b.decode(a,true);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:return[new B.Config.ptr($ifaceNil,0,0),e];case 3:f=b.nComp;if(f===1){return[new B.Config.ptr(C.GrayModel,b.width,b.height),$ifaceNil];}else if(f===3){g=C.YCbCrModel;if(b.isRGB()){g=C.RGBAModel;}return[new B.Config.ptr(g,b.width,b.height),$ifaceNil];}else if(f===4){return[new B.Config.ptr(C.CMYKModel,b.width,b.height),$ifaceNil];}return[new B.Config.ptr($ifaceNil,0,0),new L("missing SOF marker")];}return;}if($f===undefined){$f={$blk:V};}$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.DecodeConfig=V;W=function(){var $ptr;B.RegisterFormat("jpeg","\xFF\xD8",U,V);};S.ptr.prototype.makeImg=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;if(c.nComp===1){d=B.NewGray(B.Rect(0,0,$imul(8,a),$imul(8,b)));c.img1=$assertType(d.SubImage(B.Rect(0,0,c.width,c.height)),AX);return;}e=c.comp[0].h;f=c.comp[0].v;h=(g=e/c.comp[1].h,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));j=(i=f/c.comp[1].v,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));k=0;l=(h<<4>>0)|j;if(l===17){k=0;}else if(l===18){k=3;}else if(l===33){k=1;}else if(l===34){k=2;}else if(l===65){k=4;}else if(l===66){k=5;}else{$panic(new $String("unreachable"));}m=B.NewYCbCr(B.Rect(0,0,$imul(($imul(8,e)),a),$imul(($imul(8,f)),b)),k);c.img3=$assertType(m.SubImage(B.Rect(0,0,c.width,c.height)),AY);if(c.nComp===4){n=c.comp[3].h;o=c.comp[3].v;p=n;q=o;c.blackPix=$makeSlice(AV,($imul(($imul(($imul(($imul(($imul(8,p)),a)),8)),q)),b)));c.blackStride=$imul(($imul(8,p)),a);}};S.prototype.makeImg=function(a,b){return this.$val.makeImg(a,b);};S.ptr.prototype.processSOS=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,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,en,eo,ep,eq,er,es,et,eu,ev,ew,ex,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;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;d=$f.d;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;e=$f.e;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;el=$f.el;em=$f.em;en=$f.en;eo=$f.eo;ep=$f.ep;eq=$f.eq;er=$f.er;es=$f.es;et=$f.et;eu=$f.eu;ev=$f.ev;ew=$f.ew;ex=$f.ex;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=[b];c=this;if(c.nComp===0){return new L("missing SOF marker");}if(a<6||(4+($imul(2,c.nComp))>>0)>0);if(!((a===(4+($imul(2,g))>>0)))){return new L("SOS length inconsistent with number of components");}h=BN.zero();i=0;j=0;while(true){if(!(j>0,((l<0||l>=k.length)?$throwRuntimeError("index out of range"):k[l]));n=-1;o=$subslice(new BO(c.comp),0,c.nComp);p=0;while(true){if(!(p=o.$length)?$throwRuntimeError("index out of range"):o.$array[o.$offset+p]),O);if(m===r.c){n=q;}p++;}if(n<0){return new L("unknown component selector");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex=(n<<24>>>24);s=0;while(true){if(!(s=h.length)?$throwRuntimeError("index out of range"):h[j]).compIndex===((s<0||s>=h.length)?$throwRuntimeError("index out of range"):h[s]).compIndex){return new L("repeated component selector");}s=s+(1)>>0;}i=i+(($imul((t=c.comp,((n<0||n>=t.length)?$throwRuntimeError("index out of range"):t[n])).h,(u=c.comp,((n<0||n>=u.length)?$throwRuntimeError("index out of range"):u[n])).v)))>>0;((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td=(v=c.tmp,w=2+($imul(2,j))>>0,((w<0||w>=v.length)?$throwRuntimeError("index out of range"):v[w]))>>>4<<24>>>24;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).td>3){return new L("bad Td value");}((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta=((x=c.tmp,y=2+($imul(2,j))>>0,((y<0||y>=x.length)?$throwRuntimeError("index out of range"):x[y]))&15)>>>0;if(((j<0||j>=h.length)?$throwRuntimeError("index out of range"):h[j]).ta>3){return new L("bad Ta value");}j=j+(1)>>0;}if(c.nComp>1&&i>10){return new L("total sampling factors too large");}z=0;aa=63;ab=0;ac=0;ad=z;ae=aa;af=ab;ag=ac;if(c.progressive){ad=((ah=c.tmp,ai=1+($imul(2,g))>>0,((ai<0||ai>=ah.length)?$throwRuntimeError("index out of range"):ah[ai]))>>0);ae=((aj=c.tmp,ak=2+($imul(2,g))>>0,((ak<0||ak>=aj.length)?$throwRuntimeError("index out of range"):aj[ak]))>>0);af=(((al=c.tmp,am=3+($imul(2,g))>>0,((am<0||am>=al.length)?$throwRuntimeError("index out of range"):al[am]))>>>4<<24>>>24)>>>0);ag=((((an=c.tmp,ao=3+($imul(2,g))>>0,((ao<0||ao>=an.length)?$throwRuntimeError("index out of range"):an[ao]))&15)>>>0)>>>0);if(((ad===0)&&!((ae===0)))||ad>ae||64<=ae){return new L("bad spectral selection bounds");}if(!((ad===0))&&!((g===1))){return new L("progressive AC coefficients for more than one component");}if(!((af===0))&&!((af===(ag+1>>>0)))){return new L("bad successive approximation values");}}ap=c.comp[0].h;aq=c.comp[0].v;ar=ap;as=aq;au=(at=(((c.width+($imul(8,ar))>>0)-1>>0))/(($imul(8,ar))),(at===at&&at!==1/0&&at!==-1/0)?at>>0:$throwRuntimeError("integer divide by zero"));aw=(av=(((c.height+($imul(8,as))>>0)-1>>0))/(($imul(8,as))),(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(c.img1===AX.nil&&c.img3===AY.nil){c.makeImg(au,aw);}if(c.progressive){ax=0;while(true){if(!(ax=h.length)?$throwRuntimeError("index out of range"):h[ax]).compIndex;if((az=c.progCoeffs,((ay<0||ay>=az.length)?$throwRuntimeError("index out of range"):az[ay]))===BD.nil){(bc=c.progCoeffs,((ay<0||ay>=bc.length)?$throwRuntimeError("index out of range"):bc[ay]=$makeSlice(BD,($imul(($imul(($imul(au,aw)),(ba=c.comp,((ay<0||ay>=ba.length)?$throwRuntimeError("index out of range"):ba[ay])).h)),(bb=c.comp,((ay<0||ay>=bb.length)?$throwRuntimeError("index out of range"):bb[ay])).v)))));}ax=ax+(1)>>0;}}R.copy(c.bits,new R.ptr(0,0,0));bd=0;be=208;bf=bd;bg=be;b[0]=BJ.zero();bh=BP.zero();bi=0;bj=0;bk=bi;bl=bj;bm=0;bn=0;case 4:if(!(bn=h.length)?$throwRuntimeError("index out of range"):h[bp]).compIndex;bs=(br=c.comp,((bq<0||bq>=br.length)?$throwRuntimeError("index out of range"):br[bq])).h;bu=(bt=c.comp,((bq<0||bq>=bt.length)?$throwRuntimeError("index out of range"):bt[bq])).v;by=(bv=c.quant,bw=(bx=c.comp,((bq<0||bq>=bx.length)?$throwRuntimeError("index out of range"):bx[bq])).tq,((bw<0||bw>=bv.length)?$throwRuntimeError("index out of range"):bv[bw]));bz=0;case 10:if(!(bz<($imul(bs,bu)))){$s=11;continue;}if(!((g===1))){$s=12;continue;}$s=13;continue;case 12:bk=($imul(bs,bo))+(ca=bz%bs,ca===ca?ca:$throwRuntimeError("integer divide by zero"))>>0;bl=($imul(bu,bn))+(cb=bz/bs,(cb===cb&&cb!==1/0&&cb!==-1/0)?cb>>0:$throwRuntimeError("integer divide by zero"))>>0;$s=14;continue;case 13:cc=$imul(au,bs);bk=(cd=bm%cc,cd===cd?cd:$throwRuntimeError("integer divide by zero"));bl=(ce=bm/cc,(ce===ce&&ce!==1/0&&ce!==-1/0)?ce>>0:$throwRuntimeError("integer divide by zero"));bm=bm+(1)>>0;if(($imul(bk,8))>=c.width||($imul(bl,8))>=c.height){bz=bz+(1)>>0;$s=10;continue;}case 14:if(c.progressive){J.copy(b[0],(cf=(cg=c.progCoeffs,((bq<0||bq>=cg.length)?$throwRuntimeError("index out of range"):cg[bq])),ch=($imul(($imul(bl,au)),bs))+bk>>0,((ch<0||ch>=cf.$length)?$throwRuntimeError("index out of range"):cf.$array[cf.$offset+ch])));}else{J.copy(b[0],BJ.zero());}if(!((af===0))){$s=15;continue;}$s=16;continue;case 15:cl=c.refine(b[0],(ci=c.huff[1],cj=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cj<0||cj>=ci.length)?$throwRuntimeError("index out of range"):ci[cj])),ad,ae,(ck=ag,ck<32?(1<>0);$s=18;case 18:if($c){$c=false;cl=cl.$blk();}if(cl&&cl.$blk!==undefined){break s;}cm=cl;if(!($interfaceIsEqual(cm,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:return cm;case 20:$s=17;continue;case 16:cn=ad;if(cn===0){$s=21;continue;}$s=22;continue;case 21:cn=cn+(1)>>0;cr=c.decodeHuffman((cp=c.huff[0],cq=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).td,((cq<0||cq>=cp.length)?$throwRuntimeError("index out of range"):cp[cq])));$s=23;case 23:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}co=cr;cs=co[0];ct=co[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}if(cs>16){return new M("excessive DC component");}cv=c.receiveExtend(cs);$s=24;case 24:if($c){$c=false;cv=cv.$blk();}if(cv&&cv.$blk!==undefined){break s;}cu=cv;cw=cu[0];ct=cu[1];if(!($interfaceIsEqual(ct,$ifaceNil))){return ct;}((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq]=(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])+(cw)>>0));b[0][0]=((cx=ag,cx<32?(((bq<0||bq>=bh.length)?$throwRuntimeError("index out of range"):bh[bq])<>0);case 22:if(cn<=ae&&c.eobRun>0){$s=25;continue;}$s=26;continue;case 25:c.eobRun=c.eobRun-(1)<<16>>>16;$s=27;continue;case 26:da=(cy=c.huff[1],cz=((bp<0||bp>=h.length)?$throwRuntimeError("index out of range"):h[bp]).ta,((cz<0||cz>=cy.length)?$throwRuntimeError("index out of range"):cy[cz]));case 28:if(!(cn<=ae)){$s=29;continue;}dc=c.decodeHuffman(da);$s=30;case 30:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}db=dc;dd=db[0];de=db[1];if(!($interfaceIsEqual(de,$ifaceNil))){return de;}df=dd>>>4<<24>>>24;dg=(dd&15)>>>0;if(!((dg===0))){$s=31;continue;}$s=32;continue;case 31:cn=cn+((df>>0))>>0;if(cn>ae){$s=29;continue;}di=c.receiveExtend(dg);$s=34;case 34:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}dh=di;dj=dh[0];dk=dh[1];if(!($interfaceIsEqual(dk,$ifaceNil))){return dk;}(dm=((cn<0||cn>=P.length)?$throwRuntimeError("index out of range"):P[cn]),((dm<0||dm>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dm]=((dl=ag,dl<32?(dj<>0)));$s=33;continue;case 32:if(!((df===15))){$s=35;continue;}$s=36;continue;case 35:c.eobRun=((dn=df,dn<32?(1<>>16);if(!((df===0))){$s=37;continue;}$s=38;continue;case 37:dq=c.decodeBits((df>>0));$s=39;case 39:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}dp=dq;dr=dp[0];ds=dp[1];if(!($interfaceIsEqual(ds,$ifaceNil))){return ds;}c.eobRun=(c.eobRun|((dr<<16>>>16)))>>>0;case 38:c.eobRun=c.eobRun-(1)<<16>>>16;$s=29;continue;case 36:cn=cn+(15)>>0;case 33:cn=cn+(1)>>0;$s=28;continue;case 29:case 27:case 17:if(c.progressive){if(!((ae===63))||!((ag===0))){J.copy((dt=(du=c.progCoeffs,((bq<0||bq>=du.length)?$throwRuntimeError("index out of range"):du[bq])),dv=($imul(($imul(bl,au)),bs))+bk>>0,((dv<0||dv>=dt.$length)?$throwRuntimeError("index out of range"):dt.$array[dt.$offset+dv])),b[0]);bz=bz+(1)>>0;$s=10;continue;}}dw=0;while(true){if(!(dw<64)){break;}(dy=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dy<0||dy>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dy]=($imul((dx=((dw<0||dw>=P.length)?$throwRuntimeError("index out of range"):P[dw]),((dx<0||dx>=b[0].length)?$throwRuntimeError("index out of range"):b[0][dx])),((by.nilCheck,((dw<0||dw>=by.length)?$throwRuntimeError("index out of range"):by[dw])))))));dw=dw+(1)>>0;}K(b[0]);dz=AV.nil;ea=0;eb=dz;ec=ea;if(c.nComp===1){ed=$subslice(c.img1.Pix,($imul(8,((($imul(bl,c.img1.Stride))+bk>>0)))));ee=c.img1.Stride;eb=ed;ec=ee;}else{ef=bq;if(ef===0){eg=$subslice(c.img3.Y,($imul(8,((($imul(bl,c.img3.YStride))+bk>>0)))));eh=c.img3.YStride;eb=eg;ec=eh;}else if(ef===1){ei=$subslice(c.img3.Cb,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));ej=c.img3.CStride;eb=ei;ec=ej;}else if(ef===2){ek=$subslice(c.img3.Cr,($imul(8,((($imul(bl,c.img3.CStride))+bk>>0)))));el=c.img3.CStride;eb=ek;ec=el;}else if(ef===3){em=$subslice(c.blackPix,($imul(8,((($imul(bl,c.blackStride))+bk>>0)))));en=c.blackStride;eb=em;ec=en;}else{return new M("too many components");}}eo=0;while(true){if(!(eo<8)){break;}ep=$imul(eo,8);eq=$imul(eo,ec);er=0;while(true){if(!(er<8)){break;}et=(es=ep+er>>0,((es<0||es>=b[0].length)?$throwRuntimeError("index out of range"):b[0][es]));if(et<-128){et=0;}else if(et>127){et=255;}else{et=et+(128)>>0;}(eu=eq+er>>0,((eu<0||eu>=eb.$length)?$throwRuntimeError("index out of range"):eb.$array[eb.$offset+eu]=(et<<24>>>24)));er=er+(1)>>0;}eo=eo+(1)>>0;}bz=bz+(1)>>0;$s=10;continue;case 11:bp=bp+(1)>>0;$s=8;continue;case 9:bf=bf+(1)>>0;if(c.ri>0&&((ev=bf%c.ri,ev===ev?ev:$throwRuntimeError("integer divide by zero"))===0)&&bf<($imul(au,aw))){$s=40;continue;}$s=41;continue;case 40:ew=c.readFull($subslice(new AV(c.tmp),0,2));$s=42;case 42:if($c){$c=false;ew=ew.$blk();}if(ew&&ew.$blk!==undefined){break s;}ex=ew;if(!($interfaceIsEqual(ex,$ifaceNil))){$s=43;continue;}$s=44;continue;case 43:return ex;case 44:if(!((c.tmp[0]===255))||!((c.tmp[1]===bg))){return new L("bad RST marker");}bg=bg+(1)<<24>>>24;if(bg===216){bg=208;}R.copy(c.bits,new R.ptr(0,0,0));BP.copy(bh,BP.zero());c.eobRun=0;case 41:bo=bo+(1)>>0;$s=6;continue;case 7:bn=bn+(1)>>0;$s=4;continue;case 5:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.processSOS};}$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.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.d=d;$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.e=e;$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.el=el;$f.em=em;$f.en=en;$f.eo=eo;$f.ep=ep;$f.eq=eq;$f.er=er;$f.es=es;$f.et=et;$f.eu=eu;$f.ev=ev;$f.ew=ew;$f.ex=ex;$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.processSOS=function(a){return this.$val.processSOS(a);};S.ptr.prototype.refine=function(a,b,c,d,e){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,$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;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:f=this;if(c===0){$s=1;continue;}$s=2;continue;case 1:if(!((d===0))){$panic(new $String("unreachable"));}h=f.decodeBit();$s=3;case 3: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))){return j;}if(i){a.nilCheck,a[0]=((a.nilCheck,a[0])|(e));}return $ifaceNil;case 2:k=c;if(f.eobRun===0){$s=4;continue;}$s=5;continue;case 4:case 6:if(!(k<=d)){$s=7;continue;}l=0;n=f.decodeHuffman(b);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}q=o>>>4<<24>>>24;r=(o&15)>>>0;s=r;if(s===0){$s=9;continue;}if(s===1){$s=10;continue;}$s=11;continue;case 9:if(!((q===15))){$s=13;continue;}$s=14;continue;case 13:f.eobRun=((t=q,t<32?(1<>>16);if(!((q===0))){$s=15;continue;}$s=16;continue;case 15:v=f.decodeBits((q>>0));$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!($interfaceIsEqual(x,$ifaceNil))){return x;}f.eobRun=(f.eobRun|((w<<16>>>16)))>>>0;case 16:$s=7;continue s;case 14:$s=12;continue;case 10:l=e;z=f.decodeBit();$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!($interfaceIsEqual(ab,$ifaceNil))){return ab;}if(!aa){l=-l;}$s=12;continue;case 11:return new L("unexpected Huffman code");case 12:ad=f.refineNonZeroes(a,k,d,(q>>0),e);$s=19;case 19:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;k=ac[0];p=ac[1];if(!($interfaceIsEqual(p,$ifaceNil))){return p;}if(k>d){return new L("too many coefficients");}if(!((l===0))){(ae=((k<0||k>=P.length)?$throwRuntimeError("index out of range"):P[k]),a.nilCheck,((ae<0||ae>=a.length)?$throwRuntimeError("index out of range"):a[ae]=l));}k=k+(1)>>0;$s=6;continue;case 7:case 5:if(f.eobRun>0){$s=20;continue;}$s=21;continue;case 20:f.eobRun=f.eobRun-(1)<<16>>>16;ag=f.refineNonZeroes(a,k,d,-1,e);$s=22;case 22:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=23;continue;}$s=24;continue;case 23:return ah;case 24:case 21:return $ifaceNil;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refine};}$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.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.refine=function(a,b,c,d,e){return this.$val.refine(a,b,c,d,e);};S.ptr.prototype.refineNonZeroes=function(a,b,c,d,e){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:f=this;case 1:if(!(b<=c)){$s=2;continue;}g=((b<0||b>=P.length)?$throwRuntimeError("index out of range"):P[b]);if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))===0){$s=3;continue;}$s=4;continue;case 3:if(d===0){$s=2;continue;}d=d-(1)>>0;b=b+(1)>>0;$s=1;continue;case 4:i=f.decodeBit();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=h[0];k=h[1];if(!($interfaceIsEqual(k,$ifaceNil))){return[0,k];}if(!j){b=b+(1)>>0;$s=1;continue;}if((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))>=0){a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))+(e)>>0));}else{a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]=((a.nilCheck,((g<0||g>=a.length)?$throwRuntimeError("index out of range"):a[g]))-(e)>>0));}b=b+(1)>>0;$s=1;continue;case 2:return[b,$ifaceNil];}return;}if($f===undefined){$f={$blk:S.ptr.prototype.refineNonZeroes};}$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;};S.prototype.refineNonZeroes=function(a,b,c,d,e){return this.$val.refineNonZeroes(a,b,c,d,e);};$ptrType(AF).prototype.init=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=$clone(a,AD);b=this;c=0;d=a.value;e=0;while(true){if(!(e=d.$length)?$throwRuntimeError("index out of range"):d.$array[d.$offset+e]);if((f>>0)>c){c=(f>>0);}e++;}b.$set((g=$makeSlice(BQ,(c+1>>0)),$subslice(new AF(g.$array),g.$offset,g.$offset+g.$length)));h=0;i=0;j=h;k=i;l=0;while(true){if(!(l<16)){break;}m=((l+1>>0)>>>0)<<24>>>0;n=0;while(true){if(!(n<(o=a.count,((l<0||l>=o.length)?$throwRuntimeError("index out of range"):o[l])))){break;}(p=b.$get(),q=(r=a.value,((k<0||k>=r.$length)?$throwRuntimeError("index out of range"):r.$array[r.$offset+k])),((q<0||q>=p.$length)?$throwRuntimeError("index out of range"):p.$array[p.$offset+q]=((m|j)>>>0)));j=j+(1)>>>0;k=k+(1)>>0;n=n+(1)<<24>>>24;}j=(s=(1),s<32?(j<>>0;l=l+(1)>>0;}};AH=function(){var $ptr,a,b,c,d;a=AE;b=0;while(true){if(!(b<4)){break;}c=b;d=$clone(((b<0||b>=a.length)?$throwRuntimeError("index out of range"):a[b]),AD);$indexPtr(AG,c,BR).init(d);b++;}};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];M.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BY.methods=[{prop:"ensureNBits",name:"ensureNBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$error],false)},{prop:"receiveExtend",name:"receiveExtend",pkg:"image/jpeg",typ:$funcType([$Uint8],[$Int32,$error],false)},{prop:"processDHT",name:"processDHT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decodeHuffman",name:"decodeHuffman",pkg:"image/jpeg",typ:$funcType([BW],[$Uint8,$error],false)},{prop:"decodeBit",name:"decodeBit",pkg:"image/jpeg",typ:$funcType([],[$Bool,$error],false)},{prop:"decodeBits",name:"decodeBits",pkg:"image/jpeg",typ:$funcType([$Int32],[$Uint32,$error],false)},{prop:"fill",name:"fill",pkg:"image/jpeg",typ:$funcType([],[$error],false)},{prop:"unreadByteStuffedByte",name:"unreadByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[],false)},{prop:"readByte",name:"readByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readByteStuffedByte",name:"readByteStuffedByte",pkg:"image/jpeg",typ:$funcType([],[$Uint8,$error],false)},{prop:"readFull",name:"readFull",pkg:"image/jpeg",typ:$funcType([AV],[$error],false)},{prop:"ignore",name:"ignore",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processSOF",name:"processSOF",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDQT",name:"processDQT",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processDRI",name:"processDRI",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp0Marker",name:"processApp0Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"processApp14Marker",name:"processApp14Marker",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"decode",name:"decode",pkg:"image/jpeg",typ:$funcType([A.Reader,$Bool],[B.Image,$error],false)},{prop:"applyBlack",name:"applyBlack",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"isRGB",name:"isRGB",pkg:"image/jpeg",typ:$funcType([],[$Bool],false)},{prop:"convertToRGB",name:"convertToRGB",pkg:"image/jpeg",typ:$funcType([],[B.Image,$error],false)},{prop:"makeImg",name:"makeImg",pkg:"image/jpeg",typ:$funcType([$Int,$Int],[],false)},{prop:"processSOS",name:"processSOS",pkg:"image/jpeg",typ:$funcType([$Int],[$error],false)},{prop:"refine",name:"refine",pkg:"image/jpeg",typ:$funcType([BX,BW,$Int32,$Int32,$Int32],[$error],false)},{prop:"refineNonZeroes",name:"refineNonZeroes",pkg:"image/jpeg",typ:$funcType([BX,$Int32,$Int32,$Int32,$Int32],[$Int32,$error],false)}];BR.methods=[{prop:"init",name:"init",pkg:"image/jpeg",typ:$funcType([AD],[],false)}];H.init([{prop:"nCodes",name:"nCodes",pkg:"image/jpeg",typ:$Int32,tag:""},{prop:"lut",name:"lut",pkg:"image/jpeg",typ:BF,tag:""},{prop:"vals",name:"vals",pkg:"image/jpeg",typ:BG,tag:""},{prop:"minCodes",name:"minCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"maxCodes",name:"maxCodes",pkg:"image/jpeg",typ:AW,tag:""},{prop:"valsIndices",name:"valsIndices",pkg:"image/jpeg",typ:AW,tag:""}]);J.init($Int32,64);O.init([{prop:"h",name:"h",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"v",name:"v",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"c",name:"c",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"tq",name:"tq",pkg:"image/jpeg",typ:$Uint8,tag:""}]);R.init([{prop:"a",name:"a",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"m",name:"m",pkg:"image/jpeg",typ:$Uint32,tag:""},{prop:"n",name:"n",pkg:"image/jpeg",typ:$Int32,tag:""}]);S.init([{prop:"r",name:"r",pkg:"image/jpeg",typ:A.Reader,tag:""},{prop:"bits",name:"bits",pkg:"image/jpeg",typ:R,tag:""},{prop:"bytes",name:"bytes",pkg:"image/jpeg",typ:BB,tag:""},{prop:"width",name:"width",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"height",name:"height",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"img1",name:"img1",pkg:"image/jpeg",typ:AX,tag:""},{prop:"img3",name:"img3",pkg:"image/jpeg",typ:AY,tag:""},{prop:"blackPix",name:"blackPix",pkg:"image/jpeg",typ:AV,tag:""},{prop:"blackStride",name:"blackStride",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"ri",name:"ri",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"nComp",name:"nComp",pkg:"image/jpeg",typ:$Int,tag:""},{prop:"progressive",name:"progressive",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"jfif",name:"jfif",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransformValid",name:"adobeTransformValid",pkg:"image/jpeg",typ:$Bool,tag:""},{prop:"adobeTransform",name:"adobeTransform",pkg:"image/jpeg",typ:$Uint8,tag:""},{prop:"eobRun",name:"eobRun",pkg:"image/jpeg",typ:$Uint16,tag:""},{prop:"comp",name:"comp",pkg:"image/jpeg",typ:BC,tag:""},{prop:"progCoeffs",name:"progCoeffs",pkg:"image/jpeg",typ:BE,tag:""},{prop:"huff",name:"huff",pkg:"image/jpeg",typ:BI,tag:""},{prop:"quant",name:"quant",pkg:"image/jpeg",typ:BK,tag:""},{prop:"tmp",name:"tmp",pkg:"image/jpeg",typ:BL,tag:""}]);AD.init([{prop:"count",name:"count",pkg:"image/jpeg",typ:AU,tag:""},{prop:"value",name:"value",pkg:"image/jpeg",typ:AV,tag:""}]);AF.init($Uint32);$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=F.$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=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AG=AS.zero();I="short Huffman data";N="luma/chroma subsampling ratio";P=$toNativeArray($kindInt,[0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);T="missing 0xff00 sequence";AE=$toNativeArray($kindStruct,[new AD.ptr($toNativeArray($kindUint8,[0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125]),new AV([1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250])),new AD.ptr($toNativeArray($kindUint8,[0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0]),new AV([0,1,2,3,4,5,6,7,8,9,10,11])),new AD.ptr($toNativeArray($kindUint8,[0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119]),new AV([0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250]))]);W();AH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["log"]=(function(){var $pkg={},$init,A,E,B,C,D,F,G,Z,AA,AB,AC,AD,I,H,J,S;A=$packages["fmt"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];C=$packages["os"];D=$packages["runtime"];F=$packages["time"];G=$pkg.Logger=$newType(0,$kindStruct,"log.Logger","Logger","log",function(mu_,prefix_,flag_,out_,buf_){this.$val=this;if(arguments.length===0){this.mu=new E.Mutex.ptr(false);this.prefix="";this.flag=0;this.out=$ifaceNil;this.buf=Z.nil;return;}this.mu=mu_;this.prefix=prefix_;this.flag=flag_;this.out=out_;this.buf=buf_;});Z=$sliceType($Uint8);AA=$arrayType($Uint8,20);AB=$ptrType(Z);AC=$sliceType($emptyInterface);AD=$ptrType(G);H=function(a,b,c){var $ptr,a,b,c;return new G.ptr(new E.Mutex.ptr(false),b,c,a,Z.nil);};$pkg.New=H;G.ptr.prototype.SetOutput=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.out=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetOutput=function(a){return this.$val.SetOutput(a);};J=function(a,b,c){var $ptr,a,b,c,d,e,f,g;d=AA.zero();e=19;while(true){if(!(b>=10||c>1)){break;}c=c-(1)>>0;g=(f=b/10,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=(((48+b>>0)-($imul(g,10))>>0)<<24>>>24));e=e-(1)>>0;b=g;}((e<0||e>=d.length)?$throwRuntimeError("index out of range"):d[e]=((48+b>>0)<<24>>>24));a.$set($appendSlice(a.$get(),$subslice(new Z(d),e)));};G.ptr.prototype.formatHeader=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:b=$clone(b,F.Time);e=this;a.$set($appendSlice(a.$get(),e.prefix));if(!(((e.flag&32)===0))){F.Time.copy(b,b.UTC());}if(!(((e.flag&7)===0))){$s=1;continue;}$s=2;continue;case 1:if(!(((e.flag&1)===0))){$s=3;continue;}$s=4;continue;case 3:g=b.Date();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=f[2];J(a,h,4);a.$set($append(a.$get(),47));J(a,(i>>0),2);a.$set($append(a.$get(),47));J(a,j,2);a.$set($append(a.$get(),32));case 4:if(!(((e.flag&6)===0))){$s=6;continue;}$s=7;continue;case 6:l=b.Clock();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];o=k[2];J(a,m,2);a.$set($append(a.$get(),58));J(a,n,2);a.$set($append(a.$get(),58));J(a,o,2);if(!(((e.flag&4)===0))){a.$set($append(a.$get(),46));J(a,(p=b.Nanosecond()/1000,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero")),6);}a.$set($append(a.$get(),32));case 7:case 2:if(!(((e.flag&24)===0))){if(!(((e.flag&16)===0))){q=c;r=c.length-1>>0;while(true){if(!(r>0)){break;}if(c.charCodeAt(r)===47){q=c.substring((r+1>>0));break;}r=r-(1)>>0;}c=q;}a.$set($appendSlice(a.$get(),c));a.$set($append(a.$get(),58));J(a,d,-1);a.$set($appendSlice(a.$get(),": "));}$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.formatHeader};}$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;};G.prototype.formatHeader=function(a,b,c,d){return this.$val.formatHeader(a,b,c,d);};G.ptr.prototype.Output=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$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;$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);c=this;d=$clone(F.Now(),F.Time);e="";f=0;c.mu.Lock();$deferred.push([$methodVal(c.mu,"Unlock"),[]]);if(!(((c.flag&24)===0))){c.mu.Unlock();g=false;h=D.Caller(a);e=h[1];f=h[2];g=h[3];if(!g){e="???";f=0;}c.mu.Lock();}c.buf=$subslice(c.buf,0,0);$r=c.formatHeader((c.$ptr_buf||(c.$ptr_buf=new AB(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))),d,e,f);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.buf=$appendSlice(c.buf,b);if((b.length===0)||!((b.charCodeAt((b.length-1>>0))===10))){c.buf=$append(c.buf,10);}j=c.out.Write(c.buf);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];return k;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:G.ptr.prototype.Output};}$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.$deferred=$deferred;$f.$r=$r;return $f;}}};G.prototype.Output=function(a,b){return this.$val.Output(a,b);};G.ptr.prototype.Printf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Printf};}$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;};G.prototype.Printf=function(a,b){return this.$val.Printf(a,b);};G.ptr.prototype.Print=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Print};}$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;};G.prototype.Print=function(a){return this.$val.Print(a);};G.ptr.prototype.Println=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Println};}$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;};G.prototype.Println=function(a){return this.$val.Println(a);};G.ptr.prototype.Fatal=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatal};}$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;};G.prototype.Fatal=function(a){return this.$val.Fatal(a);};G.ptr.prototype.Fatalf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalf};}$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;};G.prototype.Fatalf=function(a,b){return this.$val.Fatalf(a,b);};G.ptr.prototype.Fatalln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Fatalln};}$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;};G.prototype.Fatalln=function(a){return this.$val.Fatalln(a);};G.ptr.prototype.Panic=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panic};}$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;};G.prototype.Panic=function(a){return this.$val.Panic(a);};G.ptr.prototype.Panicf=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=this;d=A.Sprintf(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=c.Output(2,e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$panic(new $String(e));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicf};}$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;};G.prototype.Panicf=function(a,b){return this.$val.Panicf(a,b);};G.ptr.prototype.Panicln=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=A.Sprintln(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=b.Output(2,d);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$panic(new $String(d));$s=-1;case-1:}return;}if($f===undefined){$f={$blk:G.ptr.prototype.Panicln};}$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;};G.prototype.Panicln=function(a){return this.$val.Panicln(a);};G.ptr.prototype.Flags=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.flag;}catch(err){$err=err;return 0;}finally{$callDeferred($deferred,$err);}};G.prototype.Flags=function(){return this.$val.Flags();};G.ptr.prototype.SetFlags=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.flag=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetFlags=function(a){return this.$val.SetFlags(a);};G.ptr.prototype.Prefix=function(){var $ptr,a,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);a=this;a.mu.Lock();$deferred.push([$methodVal(a.mu,"Unlock"),[]]);return a.prefix;}catch(err){$err=err;return"";}finally{$callDeferred($deferred,$err);}};G.prototype.Prefix=function(){return this.$val.Prefix();};G.ptr.prototype.SetPrefix=function(a){var $ptr,a,b,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=this;b.mu.Lock();$deferred.push([$methodVal(b.mu,"Unlock"),[]]);b.prefix=a;}catch(err){$err=err;}finally{$callDeferred($deferred,$err);}};G.prototype.SetPrefix=function(a){return this.$val.SetPrefix(a);};S=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=A.Sprint(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=I.Output(2,c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;C.Exit(1);$s=-1;case-1:}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Fatal=S;AD.methods=[{prop:"SetOutput",name:"SetOutput",pkg:"",typ:$funcType([B.Writer],[],false)},{prop:"formatHeader",name:"formatHeader",pkg:"log",typ:$funcType([AB,F.Time,$String,$Int],[],false)},{prop:"Output",name:"Output",pkg:"",typ:$funcType([$Int,$String],[$error],false)},{prop:"Printf",name:"Printf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Print",name:"Print",pkg:"",typ:$funcType([AC],[],true)},{prop:"Println",name:"Println",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatal",name:"Fatal",pkg:"",typ:$funcType([AC],[],true)},{prop:"Fatalf",name:"Fatalf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Fatalln",name:"Fatalln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panic",name:"Panic",pkg:"",typ:$funcType([AC],[],true)},{prop:"Panicf",name:"Panicf",pkg:"",typ:$funcType([$String,AC],[],true)},{prop:"Panicln",name:"Panicln",pkg:"",typ:$funcType([AC],[],true)},{prop:"Flags",name:"Flags",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetFlags",name:"SetFlags",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetPrefix",name:"SetPrefix",pkg:"",typ:$funcType([$String],[],false)}];G.init([{prop:"mu",name:"mu",pkg:"log",typ:E.Mutex,tag:""},{prop:"prefix",name:"prefix",pkg:"log",typ:$String,tag:""},{prop:"flag",name:"flag",pkg:"log",typ:$Int,tag:""},{prop:"out",name:"out",pkg:"log",typ:B.Writer,tag:""},{prop:"buf",name:"buf",pkg:"log",typ:Z,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=E.$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=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=H(C.Stderr,"",3);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$packages["github.com/hajimehoshi/ebiten/examples/rotate"]=(function(){var $pkg={},$init,A,B,C,D,E,J,K,L,M,N,O,P,F,G,H,I;A=$packages["github.com/hajimehoshi/ebiten"];B=$packages["github.com/hajimehoshi/ebiten/ebitenutil"];C=$packages["image/jpeg"];D=$packages["log"];E=$packages["math"];J=$ptrType(A.Image);K=$arrayType($Float64,3);L=$arrayType(K,2);M=$arrayType($Float64,5);N=$arrayType(M,4);O=$sliceType(A.ImagePart);P=$sliceType($emptyInterface);H=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:F=F+(1)>>0;b=G.Size();c=b[0];d=b[1];e=new A.DrawImageOptions.ptr($ifaceNil,new A.GeoM.ptr(false,L.zero()),new A.ColorM.ptr(false,N.zero()),O.nil);e.GeoM.Translate(-c/2,-d/2);$r=e.GeoM.Rotate((f=F%360,f===f?f:$throwRuntimeError("integer divide by zero"))*2*3.141592653589793/360);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e.GeoM.Translate(160,120);g=a.DrawImage(G,e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:return h;case 4:return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$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;};I=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=$ifaceNil;c=B.NewImageFromFile("images/gophers.jpg",0);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;G=b[0];a=b[2];if(!($interfaceIsEqual(a,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:$r=D.Fatal(new P([a]));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:d=A.Run(H,320,240,2,"Rotate (Ebiten Demo)");$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:$r=D.Fatal(new P([e]));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$s=-1;case-1:}return;}if($f===undefined){$f={$blk:I};}$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;};$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;}F=0;G=J.nil;if($pkg===$mainPkg){$s=6;continue;}$s=7;continue;case 6:$r=I();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mainFinished=true;case 7:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); -$synthesizeMethods(); -var $mainPkg = $packages["github.com/hajimehoshi/ebiten/examples/rotate"]; -$packages["runtime"].$init(); -$go($mainPkg.$init, [], true); -$flushConsole(); - -}).call(this); -//# sourceMappingURL=rotate.js.map diff --git a/_docs/public/examples/rotate.js.map b/_docs/public/examples/rotate.js.map deleted file mode 100644 index 9a3a7de76..000000000 --- a/_docs/public/examples/rotate.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rotate.js","sources":["/github.com/gopherjs/gopherjs/js/js.go","/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go","/runtime/error.go","/errors/errors.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/atomic/atomic.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/pool.go","/github.com/gopherjs/gopherjs/compiler/natives/sync/sync.go","/sync/mutex.go","/sync/once.go","/sync/pool.go","/sync/runtime.go","/sync/rwmutex.go","/io/io.go","/github.com/gopherjs/gopherjs/compiler/natives/math/math.go","/math/pow10.go","/unicode/utf8/utf8.go","/github.com/gopherjs/gopherjs/compiler/natives/bytes/bytes.go","/bytes/buffer.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall.go","/github.com/gopherjs/gopherjs/compiler/natives/syscall/syscall_unix.go","/syscall/env_unix.go","/syscall/route_bsd.go","/syscall/str.go","/syscall/syscall.go","/syscall/syscall_bsd.go","/syscall/syscall_darwin.go","/syscall/syscall_unix.go","/syscall/zsyscall_darwin_amd64.go","/github.com/gopherjs/gopherjs/nosync/mutex.go","/github.com/gopherjs/gopherjs/nosync/once.go","/github.com/gopherjs/gopherjs/compiler/natives/strings/strings.go","/strings/strings.go","/github.com/gopherjs/gopherjs/compiler/natives/time/time.go","/time/format.go","/time/time.go","/time/zoneinfo.go","/github.com/gopherjs/gopherjs/compiler/natives/os/os.go","/os/dir_unix.go","/os/doc.go","/os/error.go","/os/error_unix.go","/os/file.go","/os/file_posix.go","/os/file_unix.go","/os/getwd_darwin.go","/os/proc.go","/os/stat_darwin.go","/os/sys_darwin.go","/os/types.go","/os/types_notwin.go","/os/getwd.go","/strconv/decimal.go","/strconv/extfloat.go","/strconv/ftoa.go","/strconv/itoa.go","/strconv/quote.go","/github.com/gopherjs/gopherjs/compiler/natives/reflect/reflect.go","/reflect/type.go","/reflect/value.go","/fmt/format.go","/fmt/print.go","/fmt/scan.go","/io/ioutil/ioutil.go","/github.com/hajimehoshi/ebiten/internal/audio/audio.go","/github.com/hajimehoshi/ebiten/internal/audio/audio_js.go","/github.com/gopherjs/webgl/webgl.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/context_js.go","/github.com/hajimehoshi/ebiten/internal/graphics/opengl/locationcache.go","/bufio/bufio.go","/image/color/color.go","/image/color/ycbcr.go","/image/format.go","/image/geom.go","/image/image.go","/image/names.go","/image/ycbcr.go","/image/internal/imageutil/impl.go","/image/draw/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/draw.go","/github.com/hajimehoshi/ebiten/internal/graphics/framebuffer.go","/github.com/hajimehoshi/ebiten/internal/graphics/math.go","/github.com/hajimehoshi/ebiten/internal/graphics/program.go","/github.com/hajimehoshi/ebiten/internal/graphics/shader.go","/github.com/hajimehoshi/ebiten/internal/graphics/texture.go","/github.com/hajimehoshi/ebiten/internal/ui/input_js.go","/github.com/hajimehoshi/ebiten/internal/ui/ui_js.go","/github.com/hajimehoshi/ebiten/affine.go","/github.com/hajimehoshi/ebiten/colorm.go","/github.com/hajimehoshi/ebiten/geom.go","/github.com/hajimehoshi/ebiten/graphics.go","/github.com/hajimehoshi/ebiten/graphicscontext.go","/github.com/hajimehoshi/ebiten/image.go","/github.com/hajimehoshi/ebiten/imageparts.go","/github.com/hajimehoshi/ebiten/init.go","/github.com/hajimehoshi/ebiten/run.go","/compress/flate/copy.go","/compress/flate/huffman_code.go","/compress/flate/inflate.go","/compress/flate/reverse_bits.go","/hash/adler32/adler32.go","/compress/zlib/reader.go","/encoding/binary/binary.go","/hash/crc32/crc32.go","/hash/crc32/crc32_generic.go","/image/png/paeth.go","/image/png/reader.go","/compress/lzw/reader.go","/image/gif/reader.go","/github.com/hajimehoshi/ebiten/ebitenutil/gif.go","/github.com/hajimehoshi/ebiten/ebitenutil/loadimage_js.go","/image/jpeg/huffman.go","/image/jpeg/idct.go","/image/jpeg/reader.go","/image/jpeg/scan.go","/image/jpeg/writer.go","/log/log.go","/github.com/hajimehoshi/ebiten/examples/rotate/main.go"],"mappings":";;;;ukBA+BO,OAAqC,yC,yGAGrC,OAAgD,kE,4GAGhD,OAAgC,yC,2GAGhC,OAA0B,kC,2GAG1B,OAAkC,mB,kHAGlC,OAAgD,4C,0HAGhD,OAA4D,yE,8GAG5D,OAAiD,mD,2GAGjD,OAA8C,kG,mGAG9C,OAAyB,mB,qGAGzB,OAA6B,sC,sGAG7B,OAAuB,8B,kGAGvB,OAA2B,qC,uGAG3B,OAA6B,sC,wGAG7B,OAA6B,6B,0GAG7B,OAAqC,8C,+GAGrC,OAA8B,gB,wGAQ9B,OACL,kE,sGAIK,OACL,4C,kFAwEA,kB,mpD;qtBCnJA,qEACA,0BACA,wBACA,2CACC,kB,GAGG,YACJ,0B,4EAqBA,yE,kB,qD,CAIA,6J,6F,sCAYA,4CACA,a,6C,wE,wHCnCK,OACL,oB,WAEC,c,C,0BAGA,kE,C,yBAGA,mF,CAGD,gH,2GAOK,Y,sIAEA,YACL,0B,k4B,4F;yQC1CA,oB,yDAQK,OACL,W;0J,mBC8BC,YACA,Y,CAED,a,iEA4CA,mBACA,YACA,U,6CAoCA,iB,qDAgBA,Y,sDAQA,Y,sM;snF,8OC/IK,OACL,qD,OACC,kE,OACC,0G,OAED,iB,OAED,0HACA,oDACA,S,0OAGK,O,mCAEJ,O,CAED,2B,iF,6NCvBA,8C,OACC,qBACA,4IACA,2F,O,yB,+V,yBAQD,+C,kBAEC,O,CAGD,gFACA,iBACA,sF,kBAEC,uB,C,gG,6JAOD,a,+OCMK,O,oJAMJ,O,CAGD,QACA,IACA,OACC,UACA,MACA,gD,O,S,2LAOG,O,CAED,KACA,WACA,c,CAED,S,O,M,cAMC,sD,CAED,c,CAED,iL,O,cAEE,c,CAED,sMACA,OACA,I,O,qB,0aAeG,OAOL,sI,uBAEC,sD,CAGD,IACA,O,oCAIE,O,CAGD,eACA,iL,OACC,sMACA,O,OAED,U,qB,+iBCzFI,O,uIAEJ,O,CAGD,6FACA,8CACA,4C,OACC,qJACA,sF,O,kVCqJD,yIACC,4FACI,iDACH,eACA,sBACA,yDACC,4G,KAED,gBANiC,W,CAQlC,UACA,c,KAED,a,wBASA,K,iCAIA,4F,yB,2BCrLI,oBACJ,M,4RCVK,OAKL,8L,OAEC,0N,O,4YAYI,OAMF,mM,O,6CAED,KACA,yD,CAGD,6L,OAEC,0N,O,O,sZAcG,OAML,6FAEA,qLAEA,6M,OACC,0N,O,wZAeI,OASL,sK,kBAEC,KACA,wD,CAGG,0CACH,0NADuB,W,qBAIxB,+F,sPAQK,OACL,wC,yQAKK,OAAuB,2H,+XACvB,OAAuB,6H,shG,4F,qG,K,I;u9B,gB,8C,CCgK5B,iEACK,IACJ,sHACA,W,qB,SAGA,Y,6CAEA,wB,CAED,Y,ma,wI,8+B,4F,4F,wC,0C,sB,8C,wE,iC,iC;mfCnQA,8B,8C,WA0CC,a,C,WAGA,a,CAED,a,2CA+EA,8B,gE,6C,6CAQA,+B,yCAqBA,+BACA,4CACA,8CACA,8C,8BAIA,sBACA,yB,wDASA,sBACA,gJ,yDC1LA,QACA,SACI,qCACH,+FACA,sOAF8B,a,C,kL,sJ,e,I,M,O,K;;+QCU/B,Y,Q,6C,CAIA,gF,U,+C,C,U,8C,C,Q,6C,CAgBA,gF,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,iF,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,iF,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,mMAYD,W,Q,6C,CAIA,kB,U,+C,C,U,8C,C,Q,6C,CAgBA,kB,kB,8C,C,UAOC,8C,W,8C,C,8C,C,Q,mD,CAWD,mB,oB,oD,C,UAOC,4E,Y,oD,C,uB,oD,C,gD,C,Q,mD,CAcD,mB,oB,oD,C,UAOC,yG,wB,oD,C,gD,C,oD,+BAcD,cACA,S,yDAkBA,qBACA,Y,2DAWA,qBACA,Y,yFAYA,Y,U,gC,CAIA,SACA,4F,U,4B,CAOA,S,QAEC,I,CAEG,W,+B,4FAEF,M,CAFyB,W,C,QAM1B,I,CAED,oC,sB,gC,C,4B,iDAkDA,QACC,SACD,iBACC,SACD,kBACC,SACD,6BACC,SACD,mBACC,SACD,qBACC,S,CAED,S,gDAOO,UACP,WACC,2FACA,SACD,kBACC,+GACA,kHACA,SACD,wCACC,QAGA,gHACA,0HACA,kHACA,SAJD,mBACC,gHACA,0HACA,kHACA,S,MAEA,gHACA,2HACA,0HACA,kHACA,S,C,qDAOD,IACI,IACA,0C,6FAEF,W,MAEA,2BACA,W,CALqB,W,CAQvB,S,wDAKA,gEACC,W,SAED,S,oDAM6B,+B;8tBCpY7B,yI,UAEE,S,C,KAGF,S,+DCgCK,OAA4B,8B,uGAI5B,O,eAGJ,c,CAED,8C,sGAKK,OAAuB,8B,gGAIvB,OAAuB,uB,wGAIvB,OACL,aAEA,mBACC,6DACD,gBAEC,Q,CAED,sC,8GAKK,OAAqB,c,8GAKrB,OACL,U,4BAGC,c,C,yCAGI,S,0BAEH,mC,uHAMA,yCACA,uB,MAGA,qCACA,qC,CAED,QACA,Q,CAED,6CACA,kB,0GAQK,O,QAEJ,yD,CAED,YACA,2B,mIAMK,OACL,aACA,oB,mE,2IAOK,OACL,aACA,mB,oE,kbAcK,OACL,a,yBAGC,c,CAED,OACI,mC,UAEF,Q,qBAIC,uC,CAED,qCACA,8CACA,Q,CAED,sJACA,8CACA,gE,+BAEC,c,C,sC,4B,C,qB,oC,+aAaF,qC,+CAEE,yB,C,QAGF,wB,oaAOK,OACL,aACA,qD,OACC,UACA,+H,QAEC,iE,CAED,mBACA,kB,sC,4B,C,e,0C,C,OAWD,cACA,Y,0TAOK,OACL,aACA,YACA,iGACA,iB,mJAOK,O,UAEJ,0B,oC,CAGD,mDACA,4C,oC,0IAQK,OACL,a,yBAGC,c,kBAEC,Y,C,gC,CAIF,uCACA,mB,QAEC,a,CAED,Y,4GAOK,OACL,aACA,U,QAEC,I,CAED,sCACA,mB,QAEC,a,CAED,S,yIAKK,OACL,a,yBAGC,c,gC,CAGD,yGACA,mBACA,a,oC,qKASK,OACL,a,yBAGC,c,0C,CAGD,aACA,yG,UAEC,mB,mD,CAGD,qDACA,mB,8C,qHASK,O,wBAEJ,8E,CAED,a,YAEC,oDACA,mB,CAED,iB,qHAMK,O,6CAEJ,4E,CAED,a,YAEC,mB,CAED,iB,oJASK,OACL,+BAGA,oBACA,Y,wJAIK,OACL,8BACA,oB,QAEC,gBACA,Q,CAED,2BACA,QACA,a,4B,qJAUK,OACL,+B,4C,+FAWoC,4C,kuE,4F,4F,4F,4F;i1GCtYpC,mC,uBAEE,6DACA,S,C,G,wB,OAOD,yJ,CAED,O,+BAIA,2B,qBAEC,KACA,O,CAGD,oBACA,YACC,oB,WAEC,M,CAED,4EACA,wB,C,2B,oCChCD,kB,kBAEC,c,CAED,QACA,yBACA,qCACI,oDACH,6BACA,4IAFiC,W,CAIlC,S,+JAeA,qCACC,W,Q,a,MAKC,Y,CAED,OACA,kB,kBAEC,wB,CAED,qC,CAED,kC,8JAIG,e,gBACF,a,iH,C,gCAIA,IACA,qCACA,WACA,K,8D,C,UAIA,W,CAED,I,iD,oGAKG,gB,gBACF,mB,iH,C,iBAIA,I,C,6C,qDAwBD,yCACA,iK,UAEE,0B,CAED,O,KAED,cACA,oB,sEC7EA,MACA,0IACK,yC,yBAEF,mBACG,sE,OACF,4F,MAMA,2F,CAED,M,CAZsB,W,C,K,gfAiCzB,4F,iB,iC,CAKA,6FACA,8CAEA,6E,O,iC,CAIA,0FACI,yC,yB,mD,CAAoB,W,C,iC,kZChExB,IAIC,I,UAeA,S,CAED,yC,4B,QCjCC,uB,CAED,mB,oCAII,YACJ,KACA,gCACC,qJACA,WACA,2F,CAED,yFACA,8C,gCCyBI,yC,wBAEF,0B,CAFsB,W,CAKxB,iCACA,iBACA,oB,sHAyBK,O,qC,yGAQA,OACL,oG,+GCnBI,oB,sC,qGAgYJ,sB,sC,6B,CAMA,IACG,mF,sC,6B,C,U,qC,CAQH,mBACG,+G,sC,6B,C,gHAMF,Y,C,qE,8FC/ZG,YACJ,KAEA,2BACA,sB,sC,iC,CAOG,mI,sC,iC,C,+I,iFAWH,YACA,kDACC,mhB,iBAEC,SACA,M,CAED,wB,wCAEC,S,CAED,gCACI,kD,sBAEH,S,CAED,WACA,WACA,e,C,mD,smBC5DI,O,S,0C,CAML,yH,sC,iC,CAMI,uBAOJ,OAGA,uDACA,iGACA,kDACA,iG,wC,+5BAIK,O,kD,sB,CAML,sDACA,iGACA,kDACA,sD,2F,sB,CAMG,+L,O,a,OAGH,8B,qB,kaAaK,Y,0BAEJ,uE,cAEC,S,C,CAGF,0B,4HAGK,YACL,iE,kIAGK,YACL,mC,+GAcA,IACA,UACC,iBACD,iBACC,UACD,iBACC,UACD,gBACC,U,CAED,iB,sDAoBA,wBASA,Y,mEAOA,wBAIA,Y,8ECiCI,I,gBAEH,mB,MAEA,oB,CAED,0C,eAEC,Q,CAED,S,8CAqLA,0B,eAEC,Q,CAED,S,0CAiDA,iBACA,O,2DAMA,2B,eAEC,Q,CAED,S,iEAgBA,kC,eAEC,Q,CAED,S,qEAMA,wC,eAEC,Q,CAED,S,uEA2BA,qyC,eAEC,Q,CAED,S,4DAgBA,2B,eAEC,Q,CAED,S,gEAMA,uC,eAEC,Q,CAED,S,kFAMI,I,gBAEH,mB,MAEA,oB,CAED,uDACA,S,eAEC,Q,CAED,Y,kFA8LI,SACJ,qB,sCAEC,S,CAED,+xCACA,K,eAEC,Q,CAED,S,8EA4JI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,8EAMI,I,gBAEH,mB,MAEA,oB,CAED,kEACA,S,eAEC,Q,CAED,Y,2EAMI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,4EAmFA,oDACA,2C,eAEC,Q,CAED,Y,yEAiSI,I,gBAEH,mB,MAEA,oB,CAED,+CACA,S,eAEC,Q,CAED,Y,0EAMA,gEACA,I,eAEC,Q,CAED,Y,kDAMA,qB,eAEC,Q,CAED,S,k8E,4F,4F,4F,4F,kN,Q,Q,K,O,a,c,c,c,c,a,2lF,6C,S;gnBCj2CK,O,aAEJ,uD,CAED,c,qGAIK,O,cAEJ,wD,CAED,e,4aCKK,U,cAEJ,O,C,eAGA,kD,CAED,gBACA,wDACC,iBACA,e,aAED,sF;sQC1BA,+D,gDAIA,kC,gDAQA,IAGA,iBACC,mCACD,4BACC,SACD,8B,UAEE,S,CAED,S,CAGD,YACC,S,WAEC,M,CAED,WACA,+B,CAED,S,qE,mBC6nBC,S,CAIE,S,UACF,S,mBAEA,I,CAID,mEACA,IACA,IACI,kCACH,I,iB,QAGE,8CACA,W,C,MAGD,6B,CAED,sDACA,uCACA,gBAZkB,W,CAcnB,oDACA,wC,kM,4F,4F,4F,4F;o/ECxrBI,oC,gCAcJ,sBACA,0BACA,oBACA,oB,uBAEC,cACA,O,CAED,gCACA,6F,wBAIA,wF,0DAIA,M,oJ,6B,iBCiEC,a,CAED,kBACA,qB,ySAMI,yCACI,2BACP,W,wD,4D,2E,C,8B,2E,C,CAUA,iB,uB,oC,2D,2E,C,8B,6E,C,C,oC,gF,C,CAeA,iB,+E,2L,CAKA,iB,sD,iF,C,iFAMA,iB,yD,iF,C,iFAMA,iB,sD,iF,CAKA,iB,iFAGA,iB,iFAGA,iB,iFAGA,iB,sD,iF,CAKA,kB,uD,iF,CAKA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,C,wD,gF,CAiBA,iB,4D,gF,C,8D,gF,C,0D,gF,C,2D,gF,CAcA,iB,sFAEE,0BACA,UACA,+DACC,a,C,cAIA,M,gCAEC,M,CAED,sC,0E,C,C,CAhHyB,W,C,6C,qCAgLzB,yCACH,kBACA,kB,eAGC,eACA,e,4BAEC,a,C,CARsB,W,CAYzB,Y,uCAIA,yI,qDAEE,0C,C,KAGF,gB,gDAOA,U,QAEC,gBACA,W,CAIG,YACJ,KACA,gCACC,WACA,yFACA,0GACA,I,CAED,WACA,yFAGI,wCACH,gBADiC,W,CAIlC,8C,gEAQA,Q,gEAEC,uBACA,iB,CAED,6BACA,2C,iD,6B,C,MAKC,K,C,oC,oDAQD,IACI,YACA,kCACH,WACA,qJACA,2F,C,QAIA,I,C,MAGA,oHACC,W,C,UAGA,S,C,CAGF,gBACA,gD,uNAKK,kBACL,sJ,6aAmBK,kBAED,SACJ,iB,SAEK,YACJ,2B,MAEA,qB,CAED,qGACA,yB,2zBAKK,kBAEJ,iHAEA,KACA,IACA,IACA,KACA,IACA,IAGD,oCACC,4B,cAEC,oB,C,UAGA,M,CAED,I,0BAIC,sC,C,0BAKA,iC,CAGD,WACA,+BACC,K,SAEC,O,CAED,8EACD,mBACC,YACD,mBACC,oDACD,mBACC,sBACA,qBACD,mBACC,iBACD,mBACC,iBACD,mBACC,wDACD,mBACC,0BACA,qBACD,mBACC,YACD,mB,SAEE,gB,CAED,YACD,mBACC,YACD,mBACC,YACD,mBAEC,qE,WAEC,M,CAED,aACD,mBAEC,qE,WAEC,M,CAED,aACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mBACC,YACD,mB,UAEE,uB,MAEA,uB,CAEF,mB,UAEE,uB,MAEA,uB,CAEF,iF,sDAIE,gBACA,M,CAED,+FACA,K,SAEC,gBACA,OACA,O,MAEA,gB,CAED,uG,2CAEC,gB,CAED,6E,2C,uBAKE,gB,CAED,6E,CAGF,kB,cAEE,oBACA,M,CAID,+F,SAEC,gBACA,O,MAEA,gB,CAED,uGACA,6EACD,2BACC,qD,E,CAGF,S,khBAeA,kB,+CAIK,O,mBAEJ,gH,CAMD,4C,2F,gBAOC,a,CAED,kBACA,oB,gC,aAQC,e,C,a,MAIC,e,CAED,oE,CAED,sH,4BAIA,6DACC,iB,CAED,S,gCAMA,qC,yB,0CAGG,a,CAED,QACA,QACA,S,C,2DAGA,a,CAED,iBACA,iB,CAED,oB,8MA0CA,8H,uvDAaA,gBACA,KACA,QACA,QAIC,IACA,IACA,IACA,IACA,IACA,IACA,IACA,UACA,MACA,MAID,YACK,aACJ,mCACA,kDACA,6B,uCAEC,qE,C,W,sBAIC,qF,CAED,M,CAED,KACI,MACJ,YACA,+B,eAEE,MACA,M,CAED,iDACA,2B,UAEC,c,MAEA,c,CAEF,mB,yBAEE,MACA,M,CAED,iDACA,2BACD,mBACC,mCACD,mBACC,mCACD,6BACC,2C,eAEC,U,CAEF,mBAEC,2BACD,mBACC,2BACD,uC,mDAEE,iB,CAED,2C,cAEC,Q,CAEF,mBACC,wC,eAEC,S,CAEF,6BACC,2C,cAEC,S,CAEF,6BACC,2C,eAEC,W,CAEF,6BACC,2C,eAEC,W,C,iDAKA,iBACA,c,yBAGC,M,CAGD,KACA,gDAA2C,a,CAE3C,qCACA,kB,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,mB,eAEE,MACA,M,CAED,iDACA,MACA,cACC,OACD,oBACC,O,MAEA,M,CAEF,0F,gEAEE,iBACA,YACA,M,CAEG,gD,yB,eAGF,MACA,M,C,8BAGA,MACA,M,CAED,mH,kB,eAGC,MACA,M,CAED,uG,+B,eAGC,MACA,M,C,yDAGA,MACA,M,CAED,+H,+B,eAGC,MACA,M,CAED,+H,M,eAGC,MACA,M,CAED,mH,CAEG,iCACJ,4B,oCAEC,4B,C,oCAGA,4B,CAED,8CACA,oBACA,YACA,kBACC,O,MAEA,M,CAEF,kB,0CAGE,YACA,iBACA,M,CAED,2B,QAEC,MACA,M,CAED,mDAED,kBAGC,sB,gBAEC,MACA,M,CAED,qCACA,kBAED,kB,kFAGE,M,CAID,KACA,6GACC,a,CAED,0CACA,yB,E,cAGA,yF,C,uCAGA,qE,C,C,YAID,Y,sBAEA,I,CAGD,gD,OACC,6I,OAGD,8C,OACC,mIACA,qFAIA,4K,kCAEC,SACA,qB,CAID,iBACA,qB,OAGD,6C,OACC,qIAGA,qL,OAEC,qFACA,SACA,qB,C,2CAKA,gCACA,oB,CAED,iBACA,qB,QAID,gJ,qwC,e,gC,C,wE,+B,C,6BAuBC,Q,+B,CAIG,IACA,kC,gBAEF,M,CAEE,kB,eACF,M,CAL0B,W,CAQ5B,IACA,+B,gCAEA,gB,yB,+B,CAIA,gB,yB,+B,CAIA,gB,mC,C,oC,sCAUA,iB,iBAEC,S,CAED,kB,6BAEC,S,CAED,0C,sCAEC,S,C,WAGA,+B,C,sHAGA,S,CAED,kC,iE,8BAKC,KACA,c,CAEE,qC,sCACF,c,C,uBAGA,sBACA,c,CAKD,UACI,kCACH,gBAD4B,W,CAG7B,c,iGAOA,IACA,qCACC,kB,eAEC,M,C,kE,sD,CAMD,iI,yC,sD,CATiB,W,C,2D,0DC3iCC,eAAd,kBACL,qJ,sHAIoB,eAAf,kBACL,qJ,mHAQmB,eAAd,kBACL,gF,yGAqCK,YAA2B,sF,2HA0B3B,YAA6B,2E,iIAyG7B,kBACL,wD,kXAKK,kBACL,QAEA,oD,OACC,yF,OAED,sDACA,2C,OACC,wM,OACC,iF,qBAEA,oGACA,gE,O,OAGF,sF,olBAKK,kBACL,QACA,oD,OACC,yF,OAGD,sDACA,2C,OACC,wM,OACC,mBACA,qB,qBAEA,6G,OAED,gE,qBAEA,Q,OAED,kFACA,c,0gBAIK,kBACL,mHACA,c,8aAIK,kBACL,sGACA,S,iaAIK,kBACL,qGACA,S,kaAIK,kBACL,qGACA,S,uZAIK,kBACL,6L,2NAMA,2EACA,8G,8VAOK,kBACL,0HACA,oKAgBA,uGAMA,iF,eAEC,W,C,UAMA,WACA,K,8BAKC,W,C,C,yBAQE,gF,eACF,WACA,I,C,CAIF,Y,qiBAIK,kB,2N,mQAML,gDACA,0FACA,yBACA,wFACA,uBACA,c,8NAIK,kBACL,2O,kZAIK,kBACL,wO,+YAIK,kBACL,kJ,qOAKK,kBACL,kB,6SAKK,kBACL,sGACA,c,4PAsCK,OAED,YACJ,KAEA,8BACA,uC,MAEC,gC,C,kDAMI,IACJ,WACA,uEACA,WAEA,8BACC,UACD,kDAEC,IACA,uEACD,qDAEC,IAEA,WACA,+C,MAGA,IACA,uE,CAED,iDACA,iC,MAEA,WACA,uEAEA,iDAGA,gEACA,sC,yCAIC,WACA,uEACA,gEACA,sC,yCAKC,WACA,uEACA,iC,C,C,C,MAMF,WACA,sE,CAGD,8C,kJASA,YACA,QACI,kCACH,mCACA,kC,MAEC,WACA,qH,CAED,sCAPqB,W,C,MAUrB,WACA,wF,C,4B,kCAQD,Y,8BAEC,WACA,wF,MAEA,+DACC,WACA,oJACA,sC,C,CAGF,S,iDAIK,OAAkC,kC,kIAYlC,OACL,uCACA,sCACA,yC,0HAIK,OACL,wCACA,uCACA,0D,wHAIK,OACL,wCACA,uCACA,yD,uIAIK,kBACL,gIACA,2F,kBAEC,4EACA,oB,cAEA,4EACA,oB,CAED,SACA,S,mHAOiB,eAAZ,kBACL,+LAGA,sBACC,SACD,sBACC,6B,MAEA,qC,C,yYAkBI,kBACL,+GACA,gHACA,wJ,8jBAeK,kB,sO,gUAOL,uCAGA,wCACA,+BACA,iFAMA,uCACA,wEACA,8EACA,gFAKA,sCACA,4EACA,+EAMA,qCACA,wEACA,mDACA,8EAEA,4HACA,c,OAGC,gB,CAGD,I,UAIC,SAEC,WACD,iBAEC,IACA,KACA,gB,C,CAMF,mGACA,4FACI,K,UAEH,WACA,M,MAEA,6E,CAGD,WACA,iBACA,gB,+BAkCA,oBACA,yE,yDAIK,kBACL,eACA,S,oGAIK,kBACL,iBACA,S,wGAMK,kB,eAEJ,iE,CAED,QACA,S,yGAIK,kBACL,Q,eAEC,W,CAED,S,iUAKK,kBACL,iKACA,Y,uPAKK,kBACL,0D,+GAOK,kBACL,kK,mVAMK,kBACD,IAEJ,mD,OACC,K,qBAEA,iG,2EAEC,8E,CAED,0F,gCAEC,mE,CAED,c,OAGD,ydAkBA,oB,ipBAIK,OACL,I,kBAEC,8C,C,2FAIA,0D,C,wBAIA,qD,CAGD,iBACA,stCAGA,iBACA,iXAEA,iBACA,gNAEA,yC,OACC,S,qBACS,mN,OACT,iB,qBAEA,e,O,OAGD,iB,4jBAQK,kBACL,oH,8ZAIK,OACL,uH,ibAKK,kBACF,yI,OAGF,yE,OAED,yL,odAKK,OAEL,8JACA,S,2cAKK,kBACF,yI,OACF,yE,OAED,qL,odAKK,OAEL,0JACA,S,uQ,yFAUC,2CACA,kDACA,mF,yCAEC,yEACA,gE,C,CAGF,gH,+CAIA,0N,4D,QAQC,sGACA,WACA,sB,C,SAGA,uFACA,WACA,sB,C,4B,qqB,eAuBA,8D,CAID,cACA,2BACA,cAGA,mCACA,2BACA,2BACA,2BAEA,iGAKA,qCACA,iFACA,mCAGA,qCACA,iFACA,sFAGA,mCACA,+EACA,qFAGA,IACA,oFAGA,0J,gBAEC,wE,CAID,+EAGA,mCACA,gHAEA,yFAMA,gIACA,6C,OACQ,oPACP,OACC,4I,cACD,OACC,8G,OAED,uE,OAGD,uE,0gBAKK,kB,0CAEJ,S,CAED,iBACA,uC,yHAMK,kB,0CAEJ,S,CAED,iB,oGAEC,uC,CAED,oD,qNAMQ,eACR,QACA,S,mDAGC,OACA,6CACA,K,QAEC,oBACA,4E,C,CAMF,2JACC,qIACA,gHAGD,4EACC,sEACA,qEACA,6I,MAQA,4CACA,gEACA,4BACA,uBACA,sFACA,oE,gEAEC,wE,CAED,0F,gEAEC,wE,CAKD,+BACA,uFACC,wB,CAED,oBACA,YACC,I,wKAGC,IACA,oE,gEAEC,wE,CAED,0D,C,2GAGA,M,CAED,6BACA,wHACA,6B,CAED,2B,C,oCAUA,aACA,wC,CAED,Y,2MC7mCK,O,eAEJ,U,CAED,wC,OACC,2F,OAED,S,wXAKK,OACL,+G,qNAMA,iLAOA,qGACA,S,+gBAUK,OACL,yF,uBAGC,QACA,IACA,QACA,4BACA,oCACA,kB,CAGE,c,iKACF,SACA,WACA,UACA,eACA,aACA,kB,C,8KAIA,wHACA,SACA,WACA,UACA,4B,mBAEC,8F,MAEA,oC,CAED,kB,CAKD,OACA,oCACA,KACA,aACA,uCACC,+GACA,gG,6DAEC,KACA,M,MAEA,M,C,CAGF,2MACA,UACA,YACA,WACA,+FAEA,kB,wbAkBK,O,uBAGJ,S,C,yNAKI,wI,2GAEF,S,CAFyC,W,C,CAQ5C,uD,2GAEE,S,C,KAKF,S,0IAKK,OACL,mJ,gBAEE,Y,C,KAGF,a,+kBAMK,OACL,yFAQA,0DACC,kGACA,4C,OACC,qL,e,+C,C,O,yBAQF,6DACC,0G,gB,8D,C,MAOD,c,08L,4F,4F,4F,4F,4F,kM,qD,mF,sD,0F,gI,iC,gC,6B,+I,wG,+E,0E,Y,c,8G,4C;smFCjPA,iB,8BAIG,kB,qBACF,SACA,oDACI,2DACH,+IADgC,W,C,C,0BAKjC,wB,C,wB,kHCJI,O,4BAGJ,sCAEA,uC,CAED,iBAEA,I,SAEC,MACA,K,CAGD,qBACA,qC,mBAGE,SACI,YACJ,mE,sC,6C,C,cAKC,M,C,CAKE,gBACJ,yEACA,qBACA,W,C,0B,gC,C,oC,6WC2DI,O,e,+C,C,oI,wTAmBA,O,e,+C,C,8C,8RCxGA,OAA+B,qI,kYAQ/B,OAAkC,+H,8M,mCAOtC,iB,CAED,uB,oDAcA,a,uDCjCA,IACA,sBACC,aACD,6CACC,QACD,6CACC,Q,CAED,kF,8CCaK,OAAyB,mB,6QAuCzB,OACL,8I,mQAMK,O,e,0C,CAIL,0B,QAEC,I,C,yD,gC,C,sCAMA,kC,C,4B,oJASI,O,e,0C,CAIL,sCACC,6B,4C,gC,C,sCAKC,kCACA,M,CAED,WACA,iBACA,gE,CAED,Y,mJAMK,O,e,0C,CAIL,2B,QAEC,I,C,uBAGA,kB,CAGD,Q,sCAGC,mC,C,4B,mJAQI,O,e,0C,CAIL,sCACC,8B,sCAEC,mCACA,M,CAED,WACA,iBACA,gE,CAED,Y,4KAOK,O,e,wD,CAIL,4B,6FAEC,kB,C,sC,wE,C,oC,+IAUI,O,e,0C,C,+D,wHAoCA,O,eAEJ,uB,CAEE,sB,sCACF,wC,CAED,iB,yF,QAiCC,I,CAED,Y,wGChPA,mC,+BAEC,iB,C,+BAGA,iB,C,+BAGA,gB,CAGD,S,oDAeK,O,eAEJ,uB,CAEE,4B,sCACF,wC,CAED,iB,mHAyBK,O,eAEJ,uB,CAEE,0B,sCACF,wC,CAED,iB,sHAMK,O,eAEJ,uB,CAEE,2B,sCACF,2C,CAED,iB,iHAMK,O,eAEJ,uB,CAEE,qB,sCACF,qB,CAED,iB,mGCnFK,O,eAEJ,kB,CAED,sB,uFAKA,S,QAEC,c,CAED,uCACA,uDACA,S,gD,yC,yJAaE,K,C,MAGD,mJ,C,+CA0CI,O,eAEJ,uB,CAED,sB,4GAGK,O,uBAEJ,uB,CAEG,YACD,gB,sCACF,8B,CAED,QAGA,4BACA,S,2GAKK,O,eAEJ,kC,CAEG,6TACJ,uB,sCAEC,kD,CAED,oC,uFAmBI,6TACJ,e,sCAEC,yC,CAED,0B,4YAGK,OACL,c,WAEC,M,CAED,kCACA,6BACA,wIACC,2G,UAIC,kB,C,sC,4B,CAKD,e,yB,4B,+WAgBI,O,+BAEJ,4B,C,gE,uIAQI,O,+BAEJ,4B,C,mE,mJAOI,OACL,YACC,I,+BAEC,4B,CAED,qDACA,W,0DAMC,iBACA,S,C,qEAIA,iBACA,S,C,4B,C,0IASG,O,+BAEJ,4B,C,oE,0JASI,O,kD,2FA+CL,gBAEA,sDACC,mBAD8B,W,CAI3B,W,+B,yBAEF,wBACA,M,CAHe,W,CAOjB,S,yBC3TA,M,4BAIA,8C,yBCQA,c,4B,UA8BC,I,CAED,U,iDCnCA,8DAMA,gCACA,qBACA,yBACC,+BACD,mBACC,+BACD,oBACC,iCACD,mBACC,+BACD,oBACC,gCACD,oBAEA,oBACC,+B,C,iCAGA,8B,C,iCAGA,8B,C,gCAGA,8B,CAED,S,4BAGmB,uBACnB,4B,uCCvCA,2C,sCAEC,O,CAEG,IACJ,oE,8BAEE,iB,C,S,2DAMD,Q,C,wEC8BI,YAED,YACJ,IACA,wF,iEAEE,gFACA,W,C,S,UAID,sEACA,W,CAGD,qF,gEAEE,gF,MAEA,sE,CAED,W,SAED,gD,0HAKK,YACL,oC,4HAKK,YACL,+B,+HAIK,YACL,kB,yHAGK,OAA8B,c,sGAC9B,OAA8B,gC,uGCjF9B,OAAoC,c,qGACpC,OAAoC,c,wGACpC,OAAoC,iB,0GACpC,OAAoC,a,6qJ,4F,4F,4F,4F,4F,4F,4F,sH,0C,8C,2C,8C,yC,0C,6C,6C,2BCLJ,Y,G,M,I,K,K;k7DCEhC,OACL,a,WAEC,c,C,WAGA,e,CAGD,mBACA,IAEA,aACC,UAED,kBAEC,wFACA,WACA,wFACA,WACA,wCACA,kEAED,oBAEC,kEACA,wFACA,WACA,qE,MAIA,kEACA,iD,CAED,wC,2FAIA,kDACC,wF,KAED,iB,gCAOA,gIACC,iB,C,aAGA,O,C,8DAKI,OACD,YAGJ,IACA,+DACC,oCACA,6EACA,oHACA,WACA,I,CAID,OACI,W,+BACH,qJACA,iBAFgB,W,CAIjB,UACA,M,8HAUA,IACA,IAGI,IACJ,yD,Y,UAIG,OACA,O,CAED,yDACC,WACA,W,CAED,M,CAED,mFACA,4BAdgB,W,CAgBjB,wBAGA,iCACC,mFACA,2BACA,oCACA,iGACA,WACA,4BANe,W,CAUhB,8BACC,2BACA,oC,UAEC,iGACA,W,cAEA,a,CAED,W,CAGD,OACA,M,kCAiGI,yC,iBAEF,Y,C,gHAGA,2G,CALsB,W,CAQxB,a,4DAKA,gG,qIAEC,W,CAGD,OACA,YAGI,IACA,W,+BACH,8HACA,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,IAVgB,W,CAcjB,8BACC,yFACA,mBACA,W,UAEC,iG,qBAEA,a,CAED,I,CAGD,iB,cAEC,S,CAED,iBACA,M,iDAIK,OAEL,aAEA,cACC,+BACC,SACA,Y,CAED,cACD,cACC,gCACC,SACA,Y,CAED,e,C,oG,iBAOA,a,C,yG,YAKC,Y,CAED,oL,CAGD,qF,iDAOK,O,iBAEJ,O,C,YAGA,a,MAEA,e,C,+GAKI,O,iBAEJ,O,CAED,OACA,M,+HAIK,O,iBAEJ,O,CAIG,wCACH,6E,SAEC,qKACA,YACA,O,CALuB,W,CAWzB,UACA,OACA,iB,iIAKK,O,YAEJ,0C,CAEG,IACJ,mBACI,6CACH,uLADgC,W,CAGjC,iCACC,gCADe,W,C,eAIf,kE,CAED,S,wPC5OK,OACL,SACA,2BACA,Q,sHAGC,gDACA,Q,oE,CAGD,cAEA,4G,mGAEC,4G,MAEA,4G,CAED,Y,oLAKK,OACL,yB,8B,a,C,0DAKC,uBACA,Y,C,0DAGA,uBACA,Y,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,C,0DAGA,sBACA,W,CAED,qBACA,yBACA,S,kKAK2B,eAAtB,OACL,0EACA,0EAGA,cACA,cAGA,qKACA,gMAEA,2EAEA,yFACA,6B,0MAYK,OAGL,I,MAGC,W,CAGD,SACA,QACA,QAGA,oG,kB,iB,CAIA,4E,qJAKC,6FACA,c,MAEA,cACA,iFACA,W,CAID,iF,QAEC,W,CAED,WAGA,gBACA,2BAQA,eACI,I,aAGH,uD,MAEA,sB,CAGD,6CACA,qI,2X,iB,C,gB,sKAgBK,OAUL,mHACA,oGAEA,iBACC,4FAEA,UACC,WACD,gBACC,W,MAEA,W,C,CAKF,iF,oD,2GAOA,4BACA,iFACA,iFACA,S,wJAMK,O,yCAEJ,OACA,OACA,YACA,Y,C,UAGA,yF,CAID,cACA,qBAEA,eACA,yCACA,2FACA,mBAGA,IACA,IACA,mBACI,8D,+EAEF,IACA,M,CAED,gCALmC,W,CAOpC,I,QAGC,kFACA,qGACA,sC,MAEA,I,CAIG,YACJ,KACI,kCACH,gGACA,6BACA,WACA,yFACA,K,CAEG,qCACH,qLAD2B,a,CAG5B,WACA,QACA,YACA,Y,Q,6CAIE,yE,CAID,8BACC,gCACA,gC,oIAGC,a,CAED,0BACA,uJACA,uEACA,aACA,W,CAED,Q,CAkBD,wG,QAEC,a,CAGG,6C,kHAEF,aACA,M,CAHyB,a,CAM3B,Y,iJ,gFAaC,yE,C,6GAGA,0D,C,wJAGA,Y,C,wJAIA,YACA,+B,sGAEE,iB,MAEA,M,CAJY,W,C,QAQb,yFACA,OACA,iB,MAEA,yM,CAED,Y,CAED,a,oMAOK,O,yCAEJ,OACA,OACA,YACA,Y,C,gDAII,YACJ,KACI,wEACH,oCACA,6EACA,oHACA,WACA,I,CAED,iBACI,kCACH,kLADmB,W,CAGpB,sBACA,kJACC,iB,C,aAGA,O,CAED,YACA,Y,CAED,c,gBAGC,qDACA,Y,C,gBAGA,qDACA,Y,CAGD,YAEA,gFACA,gFAIA,eACA,yCACA,+FAGA,wEAEA,wEAGI,KACA,qE,sFAEF,MACA,M,CAED,kCALmC,a,CAOhC,qCACH,gGACA,2GACA,2HACA,wCAEG,wF,gEACF,aACA,aACA,YAGA,0D,CAZ6B,a,CAe/B,QACA,eACA,YAII,KACJ,oBACA,YACC,kCACA,kCACA,qCACA,kIACA,iBACA,yF,mFAKC,yG,C,C,mK,yFAcD,a,CAED,mN,YACC,yMACA,mD,C,2OAIA,a,C,gKAIA,a,C,6GAIA,OACA,O,CAED,Y,4CCxmBA,qB,4HAII,mBACA,SACJ,IACA,WACC,2CACA,KACD,iBACC,mBACA,K,MAEA,wE,CAGD,qFACA,sFACA,qIAEA,IACA,gDAEK,KAEJ,iCACC,QACD,YACC,S,MAEA,S,CAED,yBAED,gBAEC,W,MAIA,iG,CAED,gB,WAIC,qB,C,OAIA,yB,CAGG,+BACJ,QAEA,M,MAGC,uCACA,qEACI,aACJ,eACA,2B,OAEC,yB,CAGD,KACA,sBACC,kBACD,mBACC,qBACD,4BACC,O,C,uBAID,KACA,KACA,sBACC,aACD,4B,UAEE,I,CAED,K,C,WAII,aACJ,eACA,wCACA,wB,C,C,OAID,yB,CAED,uB,8DAKA,uCACA,YACA,8BACI,+BACJ,M,MAEC,YACA,mDAEA,IACA,oBACC,YACD,kBACC,qBACD,0BACC,O,C,MAID,IACA,oBACC,gBACD,kBACC,mBACD,0B,UAEE,I,CAED,W,CAED,mD,CAED,uB,sDAGsD,eACtD,IACA,oBACC,qBACD,kBACC,mBACD,0BAEC,I,uBAEC,O,C,MAMA,I,CAED,Y,e,WAGE,O,CAED,sD,C,WAGA,O,CAED,iC,CAID,uB,uF,8BAQC,OACA,O,CAiBD,c,8EAGC,O,CAMD,uCACA,yEACA,qCAQI,mBACA,I,iHAEH,kCACA,I,MAEA,iEACA,S,CAED,uCACA,yEACA,qCAKA,gEAII,qCACC,wB,WAEH,6E,MAEA,K,CAED,6E,WAEC,6E,MAEA,K,CAKD,8CAIA,oDAKA,UACC,gBACA,OACD,YACC,oBACA,OACD,aACC,kBACA,O,CAjCoB,W,C,kEA6CS,e,MAG9B,gB,CAID,K,kBAEC,wF,CAED,e,QAIC,gBACA,IACA,kB,QAEC,qCACA,I,CAED,+BACC,gBADgB,W,C,CAMlB,eACA,Y,aAEC,I,C,QAGA,KACA,K,MAEA,K,CAED,eAIA,SACC,yCACD,gBACC,+M,MAEA,yX,CAGD,S,kDAI+B,e,MAG9B,gB,C,WAKA,gBACA,qCACA,iCACC,gBADe,W,C,MAIhB,gB,C,QAKA,gBACI,kCACH,KACG,Y,iBACF,+F,CAED,eALqB,W,C,CASvB,S,gD,MAOC,gB,CAID,+BAGA,iBAGA,yB,SAEC,gB,CAED,4CAEA,S,gC,QAKC,S,CAED,S,gC,QAKC,S,CAED,S,oCCnbA,6FACA,S,8CAKA,8B,6G,cAqCC,iE,CAIG,YACJ,K,MAGC,gC,C,WASC,wEACC,4CACA,gGACI,kCACH,WACA,yFACA,iHACA,IAJkB,W,CAMnB,I,CAKF,eACA,gCACC,WACA,yFACA,iHACA,I,CAGD,WACA,yF,MAES,uE,QAET,mBACA,qBACA,iFACC,WACA,6IACA,2B,CAGD,WACA,mI,MAIA,mBACA,iFACC,WACA,oBACA,4LACA,I,CAGD,WACA,mI,C,C,MAKA,WACA,sE,C,MAIA,yCACA,Y,CAED,yCACA,Y,wDC9HI,YACJ,0HACA,eACI,yCACH,uBACA,I,WAEC,wC,C,yBAGA,wBACA,2EACA,uEAT0B,0B,C,2BAa1B,gBACA,0BAd0B,0B,C,M,iBAmBzB,0BAnByB,0B,C,gBAuB1B,4BACA,2CAxB0B,0B,CA2B3B,IACA,UACC,wBACD,gBACC,wBACD,iBACC,wBACD,iBACC,wBACD,iBACC,wBACD,gBACC,wBACD,iBACC,wB,MAGA,SACC,wBACA,2EACA,uEACD,oBACC,QAGA,wBACI,oCACH,4EADoB,W,CAFtB,kBACC,wBACI,oCACH,4EADoB,W,C,MAIrB,wBACI,oCACH,4EADoB,W,C,C,CA1DI,kBAgE5B,eACA,yB,4BASA,sB,0CAaA,qB,iDAcA,mC,kDAMA,6B,oDASA,kC,yDAMA,6B,iEAOA,qCACC,wCACA,iB,Q,cAGE,a,CAED,S,C,cAGA,a,C,4CAGA,a,C,CAGF,Y,+EAIA,SAEA,iB,qCAEA,wB,6CAEA,uB,6C,CAGA,Y,yHAmBO,kBACP,kCACC,iBACA,gBACD,iBACC,wC,wEAED,sB,4F,C,gBAMC,iBACA,gB,CAED,kBACA,iBAEA,IACA,6BACC,IACD,iBACC,IACD,kBACC,KACD,kBACC,KACD,kBACC,KACD,kBACC,IACD,kBACC,KACD,mCACC,IACA,IACA,YACC,IACD,kBACC,IACD,iBACC,I,CAEG,I,eAEH,iBACA,gB,CAEG,kCACH,qC,QAEC,iBACA,gB,CAED,cANkB,W,CAQnB,iB,YAGC,IACA,M,C,cAGA,iBACA,gB,CAED,IACA,OACD,yEACC,gB,eAEC,iBACA,gB,CAEG,oCACH,+B,eAEC,iBACA,gB,CAED,mBANkB,a,CAQnB,iB,WAEC,iBACA,gB,CAED,KACD,iBACC,KACD,yB,eAEE,iBACA,gB,CAED,S,MAEA,iBACA,gB,EAED,IACA,gB,6JASA,W,Q,0C,CAIA,kB,oC,0C,CAIA,0B,W,a,0C,C,oC,C,6B,0C,C,a,0C,C,wBAiBC,IACA,W,oCAEA,iBACC,wC,iD,oC,C,C,CAOE,YACJ,iIACA,qCACC,+C,uC,kC,CAIA,K,gBAEC,6B,MAEA,8BACA,8C,C,gC,8C,C,C,yD,kDAYE,yC,wBAEF,Y,CAFsB,W,CAKxB,a,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,4CAMA,wBACA,8BACC,qG,2FAEC,S,MAEA,I,C,CAGF,S,oE,W,kBAiBE,Y,C,mBAIA,mB,CAED,a,C,kBAUA,qCACA,U,uNAEC,a,CAED,UACA,mH,CAGD,gCACA,U,uNAEC,a,C,cAGA,Y,CAED,eACA,qBACA,8H,8jF,4F,4F,4F,O,0C,uC,q1E,ia,+4J,wiB,yB,2B,87E,+sB,6oE,ia;m8SCrbA,6B,GACA,sLACA,wJACA,mKACA,kNACA,2MACA,sNACA,yMACA,8OACA,yMACA,2MACA,2MACA,0JACA,mKAEA,OACA,oC,0PAIA,iB,6H,+BAKC,qIAKA,aACA,kBAEA,kB,6EAEC,uCACA,yDACC,UACA,UACA,6N,MAOD,wDAKA,0B,CAGD,aACA,YACC,gIAID,kBACC,K,oBAEC,K,C,oBAGA,K,CAED,qGAID,kBACC,aACA,uCACA,yDACC,qG,MAED,cACA,uCACA,yDACC,qG,MAED,sDAMD,kBACC,cACA,uCACA,yDACC,UACA,+I,MAMD,mCAID,kBACC,oIAID,kBACC,4FAGD,kBACC,4FAGD,kBACC,aACA,uCACA,yDACC,UACA,kK,MAQD,mC,C,CAOF,sB,mCAIA,eACA,Y,qDAMI,kBACJ,UACA,U,YAEC,c,CAED,0F,QAEC,kEACA,gG,CAED,U,6BAIA,wB,kDAIA,gBACI,uDACH,qCACA,0DAFgC,a,C,uUAOjC,oGACA,ia,OACC,qJ,OAED,iM,ybAIA,6I,OACC,2D,O,SAGA,uD,C,SAGA,uD,C,UAGA,oD,CAGD,gQAAgH,oN,uN,6K,OAK/G,sE,C,oCAGA,iB,CAED,yB,uN,oCAKC,8B,CAED,uI,mKAoCK,QACL,0B,sFAIA,4B,wNAIA,6H,gJAIA,aACA,YACC,wBACD,kBACC,oB,MAEA,mD,C,4QAKD,oGACA,SACA,aACA,WACC,2BACD,iBACC,2BACD,yBACC,sBACD,iBACC,sCACD,iBACC,4BACD,iBACC,4BACD,mCACC,uBACD,kBACC,Y,CAED,6D,4LAoCA,mB,0CAiBA,M,2BAEC,a,CAED,gDACA,c,mDAIA,sBACA,gC,mBAEC,S,CAED,8C,2UAIA,+BACA,aACA,aACA,qI,OACC,gBACA,YACA,M,OAED,yBACA,QACA,QACA,gC,4PAIA,sBACA,oC,oCAWA,qC,0PAIA,MACA,iBACA,4W,0KAIA,MACA,iB,8BAIA,mC,6YAGc,MACV,eACJ,oD,OACC,gI,OAGG,QACG,wRACP,OACC,yBACA,sBACA,sBACA,0BACA,iC,eACD,OACC,uO,QACC,qK,QACC,MACA,e,QAED,gBACA,gNACA,e,QAED,+B,eACD,OACC,oBACA,Y,eACD,OACC,U,uBAEA,yC,QAED,uQ,4VAkC8B,MAC1B,M,uBAEH,mB,iCAEC,qE,CAED,8G,2BAEC,4D,CAED,yC,qBAEC,wE,CAGD,UACA,kB,MAGA,kC,8CAEC,qE,CAED,8G,2BAEC,4D,CAED,WACA,wD,CAED,e,cAEC,sB,CAED,gCACA,iB,yNAGmB,M,gBAElB,gD,C,oCAGA,6G,CAED,8D,OACC,2G,O,cAIA,mC,CAED,mB,wJAIA,Y,yBAIA,gB,yRAG+B,M,4BAE9B,+E,CAGD,4CACA,kB,cAEC,4B,CAED,8DACC,8C,aAED,sK,wMAGK,QACL,aACA,yDACC,Y,MAEA,a,C,gVAII,QACL,8HACA,OACC,aACD,OACC,+HACD,OACK,mDACH,gP,OACC,a,QAF4B,a,qB,OAM/B,Y,wWAGK,Q,8CAEJ,0D,CAED,8G,wBAEC,uB,CAED,M,2BAEC,6BACA,iB,CAED,UACA,WACA,wDACA,0CACC,oFACA,+E,IAED,6BACA,YACA,U,yHAGK,Q,+CAEJ,c,C,gCAGA,iB,qDAEC,iBACA,sCACC,oCACD,2BACC,qCACD,kB,4BAEE,iBACA,M,CAED,6BACA,sBACA,sBACA,0BACA,M,E,CAGF,U,CAED,c,27BAKK,QACL,UAEC,KACA,Q,iCAGA,kDACA,e,cAEC,sB,C,MAGD,eACA,a,C,WAIA,gE,CAGD,oBACA,c,O,qBAGE,mE,C,kBAGA,uE,C,kBAGA,wE,C,M,oBAIA,a,C,kBAGA,kE,C,oCAGA,mE,C,CAGF,iJ,kBAEE,iE,C,MAGE,wCACA,yQ,OACF,4P,OAFiB,a,qBAKnB,sD,OAEC,oBACA,6GACA,2GACI,0CACH,4GACG,4J,QACF,wQ,QAED,gMALkB,a,uBAOnB,MACA,4BACA,kCACA,8F,OAGD,c,yBAEC,gE,CAED,eAEA,kCACA,4JACC,yc,4BAED,uKAEA,2EACA,QACC,cACD,QACC,iK,QAEA,qBACA,8DACC,wN,4BAED,U,Q,kvBAII,QACL,0BACA,MACA,YACC,oBACD,2BACC,2C,CAED,2C,yF,6BAOC,sB,CAED,U,oC,6BAKC,iB,CAED,U,+SAGK,QACE,oGACP,OACC,e,mBAEC,8B,CAED,qBACA,uIAED,O,eAEE,8B,CAED,eACA,mBACA,2CACA,mCACA,6C,OAGA,4C,O,iqBAII,QACL,2BACA,mB,gCAEC,yD,CAGD,sDACA,6GACA,aAEA,qB,2BAEC,iB,CAED,iCAEG,8K,OACC,mE,OACF,eACC,oGACA,6C,OACC,yBACA,+FACuC,iE,+EACC,6D,0B,OAGzC,sD,QACC,oG,Q,qB,O,OAMJ,aACA,0G,QACC,4FACuC,oD,yEACC,gD,uB,QAGzC,qK,iWAIA,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAKD,KACA,8HACC,a,C,0FAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,cAGC,0BACA,U,C,CAGF,S,8cAGK,QACE,+HACP,OACC,mB,+BAEC,yD,CAED,cACA,qBACA,iCAEA,aACA,wG,OACC,kGACuC,8B,qFACC,0B,6B,OAGzC,2IAED,OACC,e,+CAEC,yD,CAED,mBACA,cACA,gCACA,iCAEA,4CACA,gBACA,0G,QACC,kGACuC,8B,qFACC,0B,6B,QAGzC,+IAED,OACC,iB,8BAEC,0D,CAED,8BACA,2BACA,wI,OAGA,6C,O,2YAII,QACL,4D,+HAGK,QACE,gCACP,qBACC,mCACD,kBACC,8BACD,kBACC,2CACD,kBACC,2BACD,kBACC,+B,MAEA,6C,C,6GAII,QACE,gCACP,qBACC,qCACD,kBACC,yCACD,kBACC,gDACD,kBACC,4C,MAEA,2C,C,6GAII,QACE,gCACP,uC,eAEE,S,CAED,mBACD,kB,eAEE,S,CAED,SACD,kB,eAEE,S,CAED,0B,MAEA,+C,C,6TAIiB,MAAb,QACL,mCACA,iCACA,4HACA,6D,OACC,gHACA,OACC,8B,cACD,OACC,+G,cACD,OACC,wB,qBAEA,yB,OAED,O,OAED,c,oRAGK,QACL,mCACA,2BACA,iB,mEAEC,sE,CAED,6BACA,sBACA,sBACA,gBACA,gB,2HAGK,QACL,mCACA,2BACA,iB,0CAEC,oE,CAED,6BACA,sBACA,cACA,0BACA,gB,wZAGK,QAEJ,KACA,aACA,QAEM,+HACP,O,4BAEE,yE,CAED,mBACA,eACA,cACA,2B,cAED,OACC,UACA,eACA,8B,cAED,OACC,iB,8BAEC,6E,CAED,4I,OAGA,6C,O,uBAIA,sE,CAGD,mJ,umBAGK,QAEJ,KACA,aACA,QAEM,gCACP,Y,4BAEE,yE,CAED,mBACA,eACA,cACA,2BAED,kBACC,UACA,eACA,8B,MAGA,8C,C,8BAIA,uE,CAGD,sJ,sUAGK,QACL,2BACA,iCACA,oB,8aAMA,4C,OAEC,0B,CAED,yG,oC,4C,CAIA,SACA,e,+C,geAKA,wE,OAEC,0B,CAED,yG,oCAEC,a,CAED,Y,+LC7uBK,a,uBAEJ,iG,CAED,6B,kIAiCK,QACL,U,iHAGK,Q,qCAEJ,S,CAED,yB,4GAGK,Q,kCAEJ,S,CAED,sB,wGAGK,QAA4B,wB,0GAE5B,QAA2B,e,yGAE3B,Q,gBAEJ,iD,CAED,a,gBAEC,yE,CAED,6B,uGAGK,QAAwB,oB,8GAExB,QAA6B,yB,kHAE7B,QAAwB,+B,wGAIxB,QAA4B,U,+GAuB5B,Q,gBAEJ,S,CAED,0B,yNAGK,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,6C,uE,C,MAKD,c,kIAMK,Q,mBAEJ,eACA,sB,CAED,mC,qLAGK,Q,mBAEJ,e,oC,C,iD,2MAMI,Q,mBAEJ,e,gE,C,6E,6HAMI,QACL,iC,4GAGK,QACL,8B,4GAGK,Q,wBAEJ,yD,CAED,eACA,kB,qHAGK,Q,wBAEJ,4D,CAED,eACA,oB,oIAGK,QACL,aACA,YACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mBACD,kBACC,eACA,mB,CAED,qD,6SAGK,Q,wBAEJ,yD,CAED,eACA,qH,qcAGK,Q,wBAEJ,gE,CAED,eACA,4H,ydAGK,Q,wBAEJ,+D,CAED,eACA,2H,0dAGK,Q,wBAEJ,mE,CAED,eACA,+H,8RAGK,Q,wBAEJ,oD,CAED,eACA,mH,wGAGK,Q,wBAEJ,oD,CAED,eACA,kB,sGAGK,Q,wBAEJ,sD,CAED,eACA,kB,2GAGK,Q,wBAEJ,4D,CAED,eACA,yB,kHAGK,Q,wBAEJ,uD,CAED,eACA,uB,6GAGK,Q,wBAEJ,wD,CAED,eACA,sB,oHAGK,Q,wBAEJ,qD,CAED,eACA,kH,yGAGK,aACL,MACA,WACC,eACD,iBACC,eACD,iBACC,a,CAED,gC,sMAIK,Q,iCAEJ,U,CAED,8GACA,uB,2BAEC,6B,CAED,mBACA,YACA,U,mHAIK,QAAoC,0B,yNAGpC,Q,gBAEJ,c,CAEG,UACJ,iEACC,8G,wB,uE,C,MAKD,c,4IAiCK,aAIL,qCAEC,KACA,iEACC,a,CAED,oB,YAEC,M,CAOD,KACA,qJACC,a,C,oGAGA,M,CAED,sBACA,2BAGA,KACA,oE,2BAEE,a,CAED,a,C,kBAGA,M,CAED,6BACA,2B,YAGC,mC,uCAEC,M,CAED,U,C,CAGF,S,gbAIK,Q,gCAEJ,U,CAED,6GACA,mBACA,qD,OACC,uB,qBAEA,WACA,qI,OACC,kG,OAED,uGACA,kB,O,2BAGA,6B,C,uBAGA,qB,CAED,oBASA,sBACA,U,2pBAOK,QACL,qBACA,0JACC,sC,OACC,WACA,qX,OACC,oG,OAED,W,OAED,qH,0BAED,U,6/BAWK,QASL,cACA,mCAQI,SAOJ,0BAEA,0CACC,uCACA,MACA,SAMA,+JACC,UACA,kF,OAIC,mB,OAED,8FACA,mEACC,6GAEI,MACA,UACJ,sD,OACC,kB,uBAIA,UACA,kD,QACC,6G,QAED,a,QAID,iI,Q,uD,6F,CAMC,gHACA,gBACA,yCACA,8BACA,QACA,mB,Q,yCAOA,mB,CAED,e,mDAEC,2FACA,mB,C,eAGA,0B,CAED,2F,mDAEC,2F,CAEG,UACJ,6BACA,kBACA,iC,0B,0B,OAID,c,C,qBAGF,c,i9BAKK,QAEL,SACA,+C,OACC,mEACC,6GACA,kD,OACC,QACA,mB,OAED,wD,O,yK,O,0B,O,QAMD,c,C,oEAE8C,kB,wJ,2VAmB/C,kC,6PA4EK,Q,oCAEJ,mE,CAED,0I,OACC,6E,OAED,iC,6QAGK,Q,oCAEJ,qE,CAED,sBACA,4B,yUAGK,Q,oCAEJ,sE,CAED,sBACA,4I,iT,wBAUC,a,CAED,e,2BAEC,Y,C,mBAgBA,eACA,KACI,qDACH,8GACA,8G,8EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,CAGD,8B,gBAEC,a,CAED,KACI,qDACH,8GACA,8G,+EAEI,a,2BACF,Y,C,CAL6B,a,CAShC,a,oC,YAWC,Y,C,qEAMA,a,CAID,iB,+G,YAKC,Y,CAGD,a,wBAEC,a,C,wCAMA,Y,CAID,MACA,YACC,qEAED,kB,+DAKE,Y,CAID,4EAED,kBACC,eACA,e,iHAEC,a,CAED,4J,oHAEE,a,C,MAGF,2J,mHAEE,a,C,MAGF,YAED,kBACC,eACA,e,uDAEC,Y,CAID,aAED,kBACC,oFAED,2BACC,8CAED,kBACC,eACA,e,+CAEC,a,CAED,gEACC,6GACA,6G,mGAEC,a,C,qHAGA,a,C,uBAGA,a,C,6FAGA,a,C,+BAGA,a,C,MAGF,Y,CAGD,a,8B,gBAisBC,iB,CAED,U,8BA2HA,6B,2CCzgEK,aACL,0B,6HAKK,Q,6CAEJ,iE,C,gCAGA,qB,CAED,c,6GA+DK,Q,gBAEJ,qD,CAED,6E,2GAwCK,a,gCAEJ,2C,C,wIAMI,a,WAEJ,2B,C,2BAGA,qF,C,sJAOI,a,WAEJ,2B,C,2BAIA,qF,C,uBAGA,mE,C,kJASI,Q,4BAEJ,iE,CAED,uE,sGAKK,QACL,0BACA,qB,mRAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,8YAKK,QACL,2BACA,oJ,OACC,6D,OAGD,qB,oOAQK,QACL,mC,8GAQK,QACL,gC,oSAWK,QACL,2BACA,iCACA,2H,0aAUK,QACL,2BACA,iCACA,gI,sQAoXK,QACL,0BACA,MACA,YACC,4DACD,kBACC,qB,CAED,mE,8YAwEK,QACL,gD,OACC,mM,OAED,2BACA,0JACC,sC,OACC,kN,O,eAEE,mF,CAED,oG,Q,OAGF,uG,0BAED,U,4jBAMK,QACL,2BACG,gL,OACF,kI,OAED,8B,yhBAOK,QACF,oL,OACF,kI,OAED,8B,uTAKK,QACL,0BACA,MACA,YACC,qBACD,kBACC,qB,CAED,iE,gHAqDK,QACL,0BACA,UACA,MACA,WACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,+BACD,iBACC,iB,CAED,+D,4GAIK,Q,gBAEJ,mD,CAED,6B,gUAQK,Q,0H,yPA+EA,QACL,uB,4GAKK,QACL,8B,4WA6BuB,MAAlB,QACL,2BACA,mBASA,uIAEI,K,gCAEH,U,MAEA,mH,CAED,8B,WAEC,8B,CAED,WACA,sCACA,8B,WAIC,SACA,aACA,qC,MAEA,mC,C,imBAQI,QACL,2BACA,mBACA,UAEA,4CAEA,gBACA,K,cAEC,U,CAED,iBACA,qBACI,KACA,gDACH,+F,WAKC,c,C,WAKA,SACA,aACA,yH,MAEA,uH,CAED,OAjBsB,a,qBAmBvB,0B,2UAOK,Q,oBAEJ,6C,C,qEAGA,0D,C,qCAGA,8D,CAED,oBACA,iBACA,4CACA,oC,mHAIK,Q,oBAEJ,gD,C,iCAGA,S,CAED,0B,sIAQK,Q,oBAEJ,mD,C,iCAGA,8B,CAED,wD,QAEC,8B,CAED,2B,iIAKK,QACL,2BACA,mBACA,yB,oIAKK,QACL,0BACA,MACA,YACC,kCACD,kBACC,a,CAED,2E,oJAKK,QACL,0BACA,MACA,YACC,cACD,kBACC,a,CAED,yE,2G,SAKC,O,CAED,8D,uEAKK,QACL,0BACA,MACA,2CACC,4BACA,oEACA,kD,CAED,uE,iJAKK,QACL,0BACA,MACA,sDACC,4BACA,qEACA,kD,CAED,wE,6WAqDK,QACL,2BACA,iC,mJ,0iBAMK,QACL,mB,wBAEC,0D,CAED,WACA,oCACI,K,WAEH,SACA,UACA,2B,MAEA,mH,CAED,wI,QAEC,0B,CAED,c,oeAMmB,MAAd,QACL,2BACA,iCACA,uG,0fAKmB,MAAd,QACL,mB,wBAEC,0D,CAED,iCACA,oIACI,K,gCAEH,U,MAEA,mH,C,4I,sSAyBI,QACL,mCACA,0BACA,gB,8SAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,kcAKK,QACL,mCACA,2BACA,oJ,OACC,gE,OAED,gB,qRAKK,QACL,mCACO,gCAGP,YACC,+CACD,kBACC,gB,MAJA,sE,C,qIAUI,QACL,mCACO,gCAGP,YACC,yBACD,kBACC,gB,MAJA,oE,C,+HAUI,QACL,mCACO,gCAGP,WACC,wDACD,iBACC,6DACD,iBACC,6DACD,iBACC,wDACD,iBACC,gB,MAVA,kE,C,8WA8C8B,MAAL,MAArB,QACL,2BACA,iCACA,iCACA,mBACA,0IACI,K,gCAEH,U,MAEA,mH,C,oBAGA,2BACA,O,CAED,iCACA,2IACI,K,gCAEH,U,MAEA,mH,CAED,gH,8UAKK,QACL,mCACO,gCAGP,WACC,2BACD,iBACC,gCACD,iBACC,gCACD,kBACC,2BACD,kBACC,gBACD,kBACC,2B,MAZA,mE,C,2HAkBI,QACL,mCACA,2BACA,gB,gIAKK,QACL,mCACA,2BACA,gB,0TAwHK,QACE,gCACP,WACC,wBACD,kBACC,qB,CAID,wI,4eAQK,QACL,2BACA,iC,kJ,+bAQsB,MAAjB,QACL,2BACA,iCACA,yH,4QAIK,QACL,W,WAEC,2C,C,uBAIA,c,CAKD,sB,uBAGC,mB,uCAEC,qE,CAED,8GACA,c,CAGD,kC,oDAEC,qE,CAED,8GACA,e,kHAKK,QACL,0BACA,UACA,MACA,WACC,gCACD,iBACC,gCACD,iBACC,gCACD,kBACC,gCACD,kBACC,iBACD,kBACC,iE,CAED,gE,4GAMK,Q,oBAGJ,iD,C,4BAGA,uE,CAED,c,iT,oCAoYC,yC,CAED,yBACA,MACA,mO,2bAaK,QACL,8D,OACC,kG,OAGD,gFACA,OAGC,UACA,qBACA,8BACA,gCAED,O,WAEE,S,CAED,qG,uBAEC,Y,MAEA,a,CAED,4B,OAID,qG,sjBAMK,QACL,8D,OACC,yG,OAED,oMACA,4D,OACC,8M,OAED,oH,mqBAMA,wRACA,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,8FACC,UACD,2BACC,UACD,kBACC,U,C,cAGF,OACC,aACA,2CACC,UACD,4DACC,UACD,2BACC,U,C,cAGF,OACC,aACA,qBACC,U,C,cAGF,OACC,gN,OACC,gLACA,QACC,UACD,QACC,U,Q,O,cAIH,OACC,kN,QACC,gLACA,QACC,UACD,QACC,U,Q,Q,O,cAOF,U,CAID,id,QAGC,U,Q,c,mBAKC,U,CAED,U,CAGD,6B,4hBAwBA,oGACA,SACA,WACA,WACC,qBACD,iBACC,Y,CAED,6D,8ZAMA,oGACA,SACA,WACA,WACC,2CACD,kBACC,Y,CAED,6D,kZAIA,2LACA,iBACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,yYAIA,2LACA,kGACA,sCACA,U,8WASW,MACX,4K,gVAIY,MACZ,0I,mVAIgB,MAChB,4L,gVAIiB,MACjB,0J,uUAIgB,MAChB,qJ,uUAIiB,MACjB,sJ,uUAIa,MACb,2I,uUAIe,MACf,6I,uUAIiB,MACjB,2J,uUAIkB,MAClB,4J,uXAImB,MACnB,kQ,2ZAImB,MACnB,2Q,2ZAImB,MACnB,kQ,2ZAImB,MACnB,2Q,mbAmBW,MACX,4LACA,qGACA,yI,OACC,Y,qBAEA,6B,OAED,0K,iaAIW,MACX,4C,OACC,8FACA,2CACA,U,OAED,8M,+9gB,4F,4F,4F,4F,4F,4F,Q,K,uD,yD,6P,mB,oC;k4HCn2EI,mCACH,wFACA,wFAFsB,W,C,mDAoClB,OACL,gG,kHAGK,OACL,QACA,e,+JAIK,OACL,oBACA,Q,QAEC,QACA,K,CAED,W,Q,uB,sC,C,M,sC,M,sC,C,CAYA,c,0IAIK,OACL,8BACC,I,SAEC,K,CAED,8BACA,W,C,mIAKI,O,wCAEJ,eACA,O,CAED,wD,QAEC,oB,CAED,e,QAEC,oB,C,mHAKI,O,wCAEJ,qBACA,O,CAED,gE,QAEC,oB,CAED,qB,QAEC,oB,C,yHAUI,O,MAEJ,S,MAEA,S,C,qKAMI,O,oEAGJ,O,CAGD,0C,MAEC,+B,CAGG,gC,qFAEH,kB,iDAGC,W,C,uBAIA,W,wBAGC,W,C,C,yCAID,W,C,SAIA,mB,C,CAMF,I,2BAEC,SACA,sB,6EAEA,Q,yCAEC,W,C,CAQF,YACA,8BAGA,IACA,+BACC,iEACC,WACA,oCACA,mNACA,I,CAEF,qCACC,iEACC,WACA,sJACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,CAEF,oCACC,gEACC,WACA,gLACA,2B,C,MAGD,uD,CAED,WACA,iHACA,kDACC,WACA,wF,C,qBAKA,IACA,8B,mGAEE,WACA,wF,CAEF,qCACC,WACA,mIACA,WACA,wF,C,C,uBAID,WACA,wFACA,WACA,wF,C,MAIA,WACA,wF,0BAEA,WACA,wF,2BAEA,WACA,wF,C,qLAKA,sDACA,gBACA,iDACA,WAEA,iBACA,wFACA,WACA,wFACA,WACA,sEACA,WACA,wF,CAGD,sB,wIAIK,O,0DAEJ,SACA,oE,UAEE,mBACA,M,CAED,W,S,CAGF,S,iHAIK,OACL,gBACA,e,+HAIK,OACL,Y,eAEC,W,CAED,8CAEI,SACA,kC,0BAEF,gB,C,kDAGA,kB,CAEG,I,eAEH,kB,MAEA,uF,CAED,uEAbkB,W,CAenB,S,4HAIK,O,4CAEJ,wB,CAED,sB,sHAIK,O,6CAEJ,wB,CAED,kB,mHAIK,OACL,gBACI,K,wCAEH,Y,M,oBAGC,oB,MAEA,a,C,CAGF,e,8GAKK,OACD,S,oBAEH,qG,MAEA,8F,CAED,S,2F,2BAOC,c,CAED,S,uMAIK,OAEL,yD,+KAEC,iB,MAEA,iF,C,iB,oBAKC,qCAAe,qB,QACf,sB,C,C,4D,2BAQA,oBACA,mB,+BAEA,+FACA,mB,CAED,sBACA,O,C,2GAIA,iFACA,SACA,O,C,wHAKA,SACA,O,CAGD,sB,kMAIK,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,mHAO9B,OAA6B,+B,iHAG7B,OAA6B,8B,iHAG7B,OAA6B,+B,iHAG7B,OAA6B,gC,iHAG7B,OAA6B,+B,kHAG7B,OAA8B,yB,uHAG9B,OACL,oC,0HAIK,OACL,oC,iJAIK,OACL,oBACA,kBACA,mBACA,QACI,gBACH,IACA,WACC,wBACD,kBACC,8BACD,iBACC,6BACD,0BACC,8BACD,kBACC,+BACD,iBACC,8B,C,eAGA,M,CAGD,qBACA,uBACA,QACA,IAtBa,W,CAwBd,mBACA,kBACA,QACA,gB,kKCxcK,OACL,iC,4C,sFAIK,OACL,iC,2C,4DAIK,OACL,4BACA,iB,oEAGK,O,UAEJ,uCACA,iB,CAGD,WACA,YACA,+CACC,e,CAED,wGACA,gCACA,iB,kMA2BA,0GACA,kBACA,iBACA,yHACA,S,+IAIK,O,yBAGJ,O,CAED,2BACA,gBACA,oCACA,U,0HAGK,O,4D,gIAEA,O,8D,oHAEA,OACL,IACA,WACC,4BACD,iBACC,2BACD,iBACC,4BACD,iBACC,4BACD,iBACC,2B,CAED,a,yGAGK,OACL,0H,+HAKK,O,kJ,2RAwBL,sFACA,kGACA,wBACA,SACA,S,6VAMA,gM,mVA0BA,sFACA,2GACA,wBACA,SACA,S,mVA4BA,sFACA,yGACA,wBACA,SACA,S,gWAMa,IACb,4FACA,6D,OACC,0F,OAED,S,kJAOA,6B,sE,S,0C,CAQI,4E,U,0C,CAIH,sDACA,OALiE,W,CAOlE,c,+OAGwB,IAAnB,O,iBAEJ,sHACA,O,CAED,2HACA,0SACA,2H,4eAGK,OACL,gBACA,UACA,UACA,SACA,UACA,4GACA,OACC,iTACA,UACA,uG,cACD,OACC,gTACA,UACA,6G,qBAEA,sH,OAED,UACA,iB,0dAGK,OACL,sDACA,OACC,qB,qBAEA,+F,O,4QAKI,OACL,2C,gEAEC,Q,CAED,mDACA,4C,uSAGK,OACL,+OACA,OACC,0D,eACD,OACC,U,eACD,OACC,2D,eACD,OACC,0D,eACD,OACC,sH,QACC,gB,uBAEA,iG,Q,eAEF,OACC,2D,eACD,OACC,gB,eACD,OACC,2D,sBAEA,iG,Q,kRAMI,OACL,uBACA,uBACA,qFACA,uB,gIAKK,OACL,6BACA,uBACA,2BACA,a,OAGC,aACA,gC,CAED,4BACA,0BACA,4DACA,6BACA,8BACA,aACA,6BACA,uB,oTAGK,OACL,kQACA,OACC,oF,eACD,OACC,mC,eACD,OACC,qF,eACD,O,0BAEE,kB,MAEA,qF,C,eAEF,OACC,oF,eACD,OACC,sH,QACC,yC,uBAEA,iG,Q,eAEF,OACC,qF,eACD,OACC,qF,eACD,OACC,yC,uBAEA,iG,Q,2cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,8cAII,OACL,kMACA,OACC,kB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,cACD,OACC,iB,qBAEA,+F,O,gdAII,OACL,0HACA,OACC,mB,cACD,OACC,qB,qBAEA,+F,O,udAII,OACL,0HACA,OACC,oB,cACD,OACC,sB,qBAEA,+F,O,sdAII,OACL,wJACA,O,0BAEE,e,MAEA,e,C,cAEF,OACC,e,cACD,OACC,mC,cACD,OACC,mC,cACD,OACC,e,qBAEA,+F,O,gjBAII,OACL,sD,OACC,uD,OACC,4C,OACC,gE,OACC,wI,sBAEA,uSACA,sH,QAED,O,OAED,kE,QACC,uH,uBAEA,uSACA,4H,Q,qBAGD,2H,OAED,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,sH,2B,0BAGA,4H,MAEA,2H,CAED,O,OAED,kIACA,QACC,+B,eACD,QACC,mC,eACD,QACC,mC,eACD,QACC,+B,uBAEA,iG,Q,0kBAIsB,IAAlB,OACL,OACA,mHACA,O,cAEA,OACC,Q,qBAGA,+FACA,O,OAGG,IACJ,2FACA,OACC,c,qBAEA,+FACA,O,OAGD,gG,QACC,UACA,8SACA,UACA,U,UAEC,sH,MAEA,0D,CAED,U,e,QAEA,sH,uBAEA,qC,QACC,2E,uBAEA,6I,Q,Q,4gBAUG,OACF,gF,OAIC,0J,OACF,sHACA,O,O,gBAMA,U,CAED,mBACA,sHACA,SACA,sHACA,iBACA,mGACA,kBACA,2H,O,kUAKI,OACL,uB,MAEC,yBACA,2B,CAED,wB,MAEC,0BACA,4B,CAED,Y,qJAKK,O,MAEJ,0BACA,0B,C,MAGA,2BACA,2B,C,+nBAII,O,eAEJ,S,CAGE,8E,OACF,OACA,0FACA,uDACA,gGACA,S,OAID,uD,OACI,8E,OACF,OACA,uDAEA,6LACA,S,O,qBAMD,kFACA,QAKC,uHACA,YACC,OACA,uDACA,yMACA,SAED,YACC,OACA,uDACA,0MACA,S,Q,Q,O,iB,khCAOE,OACL,QACA,oCAEA,gE,OACC,qD,OACC,a,qBAEA,+F,O,iB,OAOF,uEACA,OACC,sN,iBAED,OACC,kM,iB,OAKD,o9BACA,iBACC,mG,eACD,iBACC,sG,eACD,iBACC,sG,eACD,iBACC,wG,eACD,iBACC,yG,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,kH,eACD,iBACC,oG,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,iBACC,oH,eACD,kBACC,sG,eACD,kBACC,+I,eACD,kBACC,sGACA,uB,eACD,kBACC,iHACA,U,eACD,kB,4I,aAII,qJ,Q,iB,Q,6O,QAMJ,gBACA,S,gwBAIuB,IAAlB,OACL,8C,OACC,qD,OACC,sH,qBAEA,+F,O,iB,OAOF,uEACA,OACC,mN,iBAED,OACC,sG,iB,OAMD,gBACA,oD,QACC,qG,QAEE,6I,Q,iB,Q,qI,spCAW2B,IAAzB,OACL,UACA,UAEO,0dACP,OACC,oJ,eACD,OACC,0G,eACD,OACC,0G,eACD,OACC,4G,eACD,OACC,wI,QACC,uH,uBAEA,8G,Q,eAEF,OACC,wI,QACC,sJ,uBAEA,mH,Q,eAEF,OACC,+L,eACD,OACC,yD,QACC,8S,cAEC,kIACA,e,CAED,4H,uBAEA,sH,QAED,+FACA,8I,Q,0BAGG,sH,MAEA,2H,C,CAGF,0GACA,2HACA,uM,2B,0BAGA,4H,MAEA,2H,C,eAEF,OACC,yD,QACC,oT,QAED,WACA,KACA,aACI,qD,S,0BAGD,sH,MAEA,2H,C,CAGF,+E,QACI,gL,QACF,kIACA,2H,Q,QAGF,+MAd6B,a,uBAgB9B,4H,eACD,QACC,mGACA,iD,QACC,yD,QACC,0TACA,sH,uBAEA,sH,Q,uBAGD,mH,Q,eAEF,QAMI,0b,QACE,UACJ,iF,QACC,oG,e,QAEA,4M,uBAKA,0BACA,8DACC,4S,4B,QAGF,0GACA,UACA,e,QAED,yD,QACC,0T,+BAEC,kIACA,e,CAED,4H,uBAEA,2H,QAEG,+C,S,0BAGD,sH,MAEA,2H,C,CAGF,iNARwB,a,uB,0BAWxB,4H,MAEA,2H,C,eAEF,QACC,eAGA,wD,QACQ,6NACP,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,gBACD,QACC,2HACA,mHACA,iB,S,QAKF,wG,eADD,QACC,wG,uBAEA,uG,QAED,U,a,6wBAMA,I,gBAEC,4HACA,S,UAEC,IACA,Q,C,CAGF,c,oF,e,0C,CAgBI,yC,yBAEF,iC,mB,+C,C,mD,CAF2B,W,C,0C,kHAexB,O,2C,0C,CAIL,iBACA,0C,iB,8C,CAIA,mB,2C,6fAIK,OACL,WACA,IACA,QACA,kBACI,qCACH,kBACA,IACA,yDACC,W,C,QAGA,2I,C,SAIA,c,CAID,WAGA,mBAEA,gCACC,kBACA,WACC,0BACD,iBACC,yBACD,iBACC,yBACD,iBACC,0BACD,iBACC,0B,MAEA,Q,CAba,W,CAkBf,oD,gCAIC,WACA,+D,+BAGC,uH,C,gBAMA,qBACA,0B,CAED,Q,MAEA,iE,iCAEC,mB,C,C,uCAMD,W,MAEC,mB,CAED,oD,gCAEC,WACA,iE,iBAGC,aACA,iC,C,gCAGA,uH,CAED,Q,MAEA,mE,gCAEC,aACA,gC,C,C,C,OAMF,oD,CAGD,sC,OACC,uHACA,c,OAED,qDACA,WAEA,wC,OACC,2HACA,c,OAED,+E,OACC,sHACA,SACA,sHACA,c,c,OAEA,sHACA,SACA,sHACA,c,OAED,uFACA,W,Y,yBAKE,2BACA,2B,C,wBAIA,0BACA,0B,C,CAGF,mG,qBAMD,6D,QACC,sHACA,2CACC,uFACA,qE,QACC,iTACA,2H,QAED,2G,uBAEC,sH,CARqB,W,uBAWvB,2H,Q,2pBAII,OACL,QACI,6CACH,mBAEA,uFACA,qC,OACC,sL,cAEC,2H,C,OAGF,qGAViC,W,qB,MAajC,2H,C,mVC5iCI,O,uF,0UAIA,O,kBAEJ,uBACA,aACA,eACA,aACA,cACA,c,C,2EAGA,QACA,c,CAGD,sH,mCAEC,uBACA,a,qCAEA,a,CAED,c,0RAGK,O,gC,gC,C,4C,gTASA,OACL,4G,sC,+B,c,CAKC,W,CAED,S,+bAcK,OACF,6E,OACF,8F,qBAEA,sB,OAED,cACA,uBACA,iB,sQAGK,OACL,oD,qHAGK,OACL,2D,2fAGK,OACL,gEACI,a,sCACC,kD,MACF,W,MAEA,U,C,C,a,8BAKF,K,CAED,2BACA,8FACA,e,kZ,aAoBC,a,CAED,eACA,iJ,WAEE,a,C,YAGA,Y,C,KAGF,a,4BAKA,a,iNAMK,OACL,qG,iPA2FiB,eAAZ,O,gBAGJ,mBACA,O,C,yBAIA,O,CAED,2BACA,eACA,U,iUAIK,OACL,OACC,6F,WAEC,O,CAED,+K,OACC,c,OAED,wC,O,MAEE,c,C,sBAGA,c,CAED,oCACA,O,OAED,0C,QACC,gGACA,c,Q,qB,2fAQG,OACL,mC,OACC,qG,OAGD,OACC,6F,WAEC,c,CAED,sH,OACC,gGACA,c,OAED,0H,qBAED,0E,wQAOA,2E,UAEE,S,C,SAGF,S,iPAuBK,OACL,6FACA,6C,OACC,8F,OAED,kB,suX,4F,4F,4F,4F,4F,4F,4F,4F,oB,oB,iC,kC,+B,kC,kC,gC,iC,+B,sC,uC,oC,sC,gC,qC,0C,yC,wC,kDDrY0B,iN,I,+G,qH,2B,kZ,kDCuQA,oF,I,iD,0C;;kZ,4F,4F,4F,4F,4F,4F,4F,oD;ye,4F,4F,4F,4F,4F,4F,4F,4F,oDCzPzB,qBACA,2H;sNClHD,I,sC,mCCsDC,O,CAGD,uB,kBAEC,6B,C,kBAGA,O,CAED,WACA,O,kL,4F,4F,mG;qztBCpDA,kD,8D,8CA+SC,qE,C,cAIA,M,CAGD,uOAQA,gE,aAEC,6E,aAEC,4D,C,CAGF,wlBACA,WACA,oB,iFAMK,OACL,kCACA,8H,+IAWK,OACL,0B,sIAIK,OACL,2B,kJAIK,OACL,yD,sJAIK,OACL,yB,uIAIK,OACL,8B,kJAIK,OACL,+B,+IAIK,OACL,0B,4IAIK,OACL,6B,yIAKK,OACL,0B,+IAKK,OACL,oC,uJAIK,OACL,wB,+IAIK,OACL,oC,4JAKK,OACL,yD,6IAIK,OACL,4D,oJAKK,OACL,wD,6IAIK,OACL,kB,4HAIK,OACL,6B,sIAIK,OACL,uB,4HAGK,OACL,yB,yIAKK,OACL,4G,uIAIK,OACL,0B,gKAIK,OACL,yC,iMAIK,OACL,4C,mKAIK,OACL,+B,gIAIK,OACL,oC,sIAKK,OACL,gC,mIAIK,OACL,qC,0IAIK,OACL,gC,8HAIK,OACL,gC,4HAIK,OACL,qB,wHAIK,OACL,yB,qIAMK,OACL,8B,2IAOK,OACL,0B,wIAMK,OACL,+B,4IAIK,OACL,yB,iIAIK,OACL,0B,+HAKK,OACL,sB,uHAIK,OACL,0C,4HAIK,OACL,yB,oIAIK,OACL,2B,+HAIK,OACL,oB,kIAIK,OACL,qC,8JAIK,OACL,2B,gJAIK,OACL,+B,sIAIK,OACL,mB,+HAKK,OACL,oC,6IAGK,OACL,kB,wGAGK,OACL,iB,uIAKK,OACL,0C,0LAIK,OACL,yC,6JAKK,OACL,sB,4HAKK,OACL,2B,2IAKK,OACL,qC,kJAKK,OACL,sC,wJAIK,OACL,iCACA,oCACI,oDACH,0FAD8B,W,CAG/B,S,qJAIK,OACL,2E,wJAKK,OACL,wC,gJAKK,OACL,gC,yHAIK,OACL,yC,sHAKK,OACL,sD,6JAKK,OACL,yD,8LAKK,OACL,uD,gKAKK,OACL,4C,yJAKK,OACL,2D,0JAKK,OACL,8C,sKAKK,OACL,wC,2JAIK,OACL,2C,sJAIK,OACL,0D,2IAIK,OACL,yD,mJAIK,OACL,oCACA,oCACI,oDACH,gHAD6B,W,CAG9B,S,yJAKK,OACL,qC,4IAKK,OACL,gC,0IAKK,OACL,8D,uJAMK,OACL,qC,uJAIK,OACL,yD,kJAMK,OACL,+B,sHAIK,OACL,mC,iIAIK,OACL,oC,+HAIK,OACL,gC,4HAIK,OACL,qC,gIAIK,OACL,+B,qHAIK,OACL,gC,uHAIK,OACL,gC,uHAIK,OACL,sB,yHAKK,OACL,wB,iIAKK,OACL,0B,uIAKK,OACL,4B,4JAMK,OACL,mC,uKAIK,OACL,sC,iKAQK,OACL,0B,sIAIK,OACL,iD,sJAWK,OACL,iC,yJAIK,OACL,8B,mKAIK,OACL,sC,2JAIK,OACL,wB,+HAIK,OACL,wB,mIAIK,OACL,0B,uIAIK,OACL,0B,2IAIK,OACL,4B,+IAIK,OACL,4B,mJAIK,OACL,8B,uJAIK,OACL,8B,sJAcK,OACL,qE,4JAKK,OACL,qE,4JAKK,OACL,qE,8IAIK,OACL,uB,+HAIK,OACL,4B,iKAGK,OACL,8D,0KAcK,OACL,2B,g4oC,4F;y8HCh8BuB,cAAlB,iBACL,2B,uFAWiB,cACjB,uD,0DASI,S,gCAIH,iEACI,YACJ,+F,sCAKC,U,C,MAKD,gFAIA,wEACA,6lB,CAGD,odAYA,eACA,SACA,S,kEAGK,OACL,eAEA,uCACA,mF,+RAGK,OACL,eACG,2F,OACF,wJ,O,kRAII,OACL,eACA,oB,aAEC,qD,CAED,yDACA,mDAEA,oGACA,oGAOI,Y,kBAEH,I,CAED,4LAEA,+B,+IAGiC,cAA5B,OACL,e,mDAGC,+DACA,oC,C,qXAIkC,cAA9B,OACL,eACA,UAEA,qBAEA,iDACA,yFACG,2F,OACF,gP,OAED,kE,uUAG6B,cAAxB,OACL,eACA,0D,mIAG+B,cAA1B,OACL,eACA,0B,+IAGK,OACL,eAIA,wJ,gWAGgC,cAA3B,OACL,eACA,wBACA,gCAEA,iJACA,+DACA,wF,OACC,4Q,OAGD,+B,kTAK6B,cAAxB,O,oBAGJ,qBACA,eACA,oBACA,iB,CAED,qBACA,eACA,oBACA,iB,yJAGK,OAEL,eACA,0DACA,iDACA,iB,2JAGmC,cAA9B,OACL,eACA,8B,sWAGK,OACL,eACA,yB,aAEC,uD,CAGD,oBACA,mBAEA,iG,OACC,wBACA,yQ,OAED,+B,qSAG8B,cAAzB,OACL,eACA,yB,uIAGK,OACL,e,kDAGC,a,CAED,qJ,oJAKK,OACL,eACA,oB,aAEC,wD,CAED,uBACA,WAEA,+IACC,2B,KAED,iB,kEAEC,+C,CAED,+B,8HAG4B,cAAvB,OACL,eACA,uB,0IAGoC,cAA/B,OACL,eACA,mD,sWAG4B,cAAvB,OACL,eACA,oGACA,wB,ghBAG+B,cAA1B,OACL,eACA,oGACA,YACA,UACC,iDACD,iBACC,qC,MAEA,iC,C,2UAIkC,cAA9B,OACL,eACA,2C,kaAGqC,cAAhC,OACL,eACA,0FACA,+B,OAEC,wC,CAED,wC,olBAGyC,cAApC,OACL,eACA,0FACA,kC,miBAG0C,cAArC,OACL,eACA,0FACA,mC,wVAGK,OACL,eACA,mBACA,uBACA,8BACA,oB,gJAGwC,cAAnC,OACL,eACA,mE,6JAGK,OACL,eACA,4B,8IAGK,OACL,eACA,iE,iZClVgD,cAChD,OACG,mE,OACF,+G,CAED,6IACA,oC,OACC,mHACA,8I,OAED,S,giBAO8C,cAC9C,OACG,mE,OACF,+G,CAED,qHACA,oC,OACC,0GACA,oI,OAED,S,uxI,4F,4F,4F,iI,I,wB;woBCLA,sC,wBAEC,S,C,SAGA,K,CAED,+CACA,2BACA,S,gDAKA,iB,kEAKK,OACL,iB,+GAGK,OACL,6C,sTAWK,O,UAGJ,2CACA,iBACA,M,C,uBAIA,wD,CAIG,uCACH,+H,QAEC,U,CAED,e,sCAEC,QACA,O,C,QAGA,O,CAXwC,W,qBAc1C,sB,oQAGK,OACL,QACA,gBACA,S,mSAOK,O,QAEJ,oC,C,oBAGA,iC,CAGD,gFACC,2F,qBAGG,YACD,a,QAEF,IACA,c,mCAEC,qB,C,CAGF,0C,2fAQK,O,Q,gD,C,UAKJ,Y,CAED,IACA,OACC,eACA,uC,OACC,2FACA,e,O,QAGA,I,CAED,eACA,W,U,oC,C,0C,2C,C,qB,qoBAeI,OACL,Y,U,sC,CAIA,2C,O,0C,sC,CAIC,0D,OAGC,gH,QAEC,U,C,QAGA,gHACA,kB,C,sC,OAIF,2F,c,sC,C,OAOD,yCACA,eACA,0HACA,kB,oC,ykBAMK,OACL,kBACA,uC,0C,sC,CAIC,2F,qBAED,uGACA,eACA,kB,oC,6RAKK,O,mCAEJ,iC,C,UAIA,e,MAGA,M,CAED,2HACA,cACA,kBACA,iB,qbAMK,OACL,mJACC,2F,qBAED,kB,c,gD,CAIA,wH,WAEC,uD,CAED,eACA,0HACA,iB,8C,iVAQK,O,yCAEJ,iC,CAED,4BACA,cACA,kBACA,iB,mHAIK,OAA4B,kB,gVAY5B,OACL,OAEI,0C,SACF,yCACA,sBACA,c,C,0CAKA,2BACA,QACA,cACA,c,C,gCAKA,QACA,QACA,qBACA,c,CAGD,2F,qBAIE,iB,SACF,qGACA,kB,CAGD,Y,6iBAmBK,OACL,+G,4C,gI,YAQG,mE,CAED,eACA,kC,C,iD,C,kB,sCAOA,Q,CAED,c,CAED,Y,iHAGC,I,gIAEC,I,CAED,kC,CAED,c,kpBAUK,OAGD,QACA,SAEJ,OACK,YACJ,8G,mCAEC,c,C,+CAGA,IACA,c,CAID,0BACA,gBACA,e,qBAID,IACA,kDACC,sG,KAED,mBAGA,kBACA,IACA,kDACC,yH,KAED,6B,4B,mmBAWK,OACL,8GACA,oB,4B,wyBAKK,OACL,6G,sCAEC,Y,CAGE,qF,OACF,4GACA,kD,4B,OAIE,oF,OACF,gHACA,kD,4B,OAID,4D,OACC,6F,OAGD,uCAEC,0HACA,sD,uC,iC,CAIA,6F,uB,mCAIA,gB,C,0C,0qBASI,OACL,iI,QAEC,U,CAED,eACA,0B,orE,4F,4F,4F,4F,oE,oE,+C,qD,2D,4D,uD,yF;gjFCtdK,iBACL,YACA,uBACA,YACA,uBACA,YACA,uBACA,YACA,uBACA,gB,mIAYK,iB,gF,iIASA,iBACL,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,2BACA,4FACA,YACA,uBACA,gB,iIASK,iBACL,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,2BACA,8FACA,YACA,gB,mIAQK,iBACL,YACA,uB,gD,mIASK,iBACL,Y,gD,qIASK,iBACL,YACA,uB,oD,qIASK,iBACL,Y,oD,iFAiBA,oB,kPAOK,OACL,yG,qcAgBG,+B,MACF,S,CAED,sHACA,2I,kaAIG,+B,MACF,S,CAED,sHACA,mG,+cAIG,+B,MACF,S,CAED,sH,cAEC,wH,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,2I,kfAIG,+B,MACF,S,CAED,sH,cAEC,4F,C,UAGA,uD,CAGD,6GACA,6GACA,6GACA,mG,0aAIG,+B,MACF,S,CAED,iGACA,sE,kXAIG,+B,MACF,S,CAED,iGACA,4D,sZAIG,+B,MACF,S,CAED,+GACA,0KACA,sE,kbAIG,+B,MACF,S,CAED,+GACA,0KACA,4D,qYAOK,O,kBAEJ,iB,CAED,qM,2mBAKK,OAGL,sHACA,yBACA,4IACC,sHACA,8C,Q,UAGE,S,CAED,gB,C,yBAGF,S,wXAQI,I,QAEH,U,MAEA,U,CAED,iC,+CCjSA,SACA,SACA,SACA,kFACA,sFACA,oF,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,QAGA,I,gBAEA,M,CAED,+C,2EAkDK,iBAkBL,wBACA,mBACA,mBACA,kCACA,wDACA,mC,QAEC,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,C,QAGA,I,kBAEA,Q,CAED,sC,2VAOG,+B,MACF,S,CAED,+GACA,+FACA,qD,qOAKA,UACA,UACA,UACA,I,QAEC,I,C,QAGA,I,C,UAGA,kB,CAED,mHACA,mHACA,mHACA,sE,wEAKA,uCACA,8IACA,8IACA,8IACA,6E,8EAWK,kBAIL,yCACA,gJACA,gJACA,gJACA,oB,sWAOG,gC,MACF,S,CAED,+GACA,uGACA,wD,+nG,oB,sB,qB,uB,qB,uB,oB,sB,wB,4B,8B,6B,qB;+0KCrKA,gC,uDAWG,sC,MACF,S,CAED,sB,uC,8BAMC,a,CAED,yI,wDAEE,a,C,KAGF,Y,wPAKA,kJACC,sH,iDAEC,S,C,yBAGF,oE,kYAQA,OACA,gG,qCAEC,oC,CAED,2GACA,mB,uMCnEK,iBACL,0C,yGAIkB,cAAb,iBACL,wC,qGAIkB,cAAb,iBACL,wC,qGAIK,iBACL,4C,yGAIK,iBACL,gM,oGAIiB,cAAZ,iBACL,4D,+GAMkB,cAAb,iBACL,0BACA,uBACA,mE,UAEC,e,CAED,mE,UAEC,e,CAED,oB,oGAIiB,cAAZ,iBACL,qB,mGAwBK,iBACL,yC,qGAIK,iBACL,0B,6FAIK,iBACL,0B,+FAIK,iBACL,wD,qGAOsB,cAAjB,iBACL,oG,qGAOsB,cAAjB,iBACL,oG,2GASK,iB,wBAEJ,kHACA,gB,MAEA,uBACA,uB,C,wBAGA,kHACA,gB,MAEA,uBACA,uB,CAED,S,+GAK4B,cAAvB,iB,oBAEJ,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,qCAGA,e,CAED,S,mHAIwB,cAAnB,iB,cAEJ,S,C,cAGA,S,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,C,oBAGA,gB,CAED,S,wGAIK,iBACL,0C,sGAKqB,cAAhB,iBACL,2C,wGAI2B,cAAtB,iBACL,iG,8GAMqB,cAAhB,iB,cAEJ,Y,CAID,8E,0GAMK,iB,oBAEJ,wC,C,oBAGA,wC,CAED,S,8GAIK,iB,2BAEJ,6C,CAED,kD,uGAIK,iBACL,S,6GAIK,iBACL,sB,iH,QAWC,gB,C,QAGA,gB,CAED,gD,+DCnMK,OAAoC,mB,iHAEpC,OAA8B,c,8GAE9B,OACL,kD,gIAGK,O,iCAEJ,+B,CAED,mBACA,ub,yHAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,qWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,4HAKuB,cAAlB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIY,cACZ,0BACA,yCACA,2C,kEAcK,OAAsC,qB,iHAEtC,OAAgC,c,8GAEhC,OACL,oD,kJAGK,O,iCAEJ,iC,CAED,mBACA,igC,6HAUK,OACL,kF,8dAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,ibAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,gIAKyB,cAApB,OACL,8B,cAKC,oE,CAED,+BACA,0D,mIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+FAIc,cACd,0BACA,yCACA,2C,oEAcK,OAAqC,oB,iHAErC,OAA+B,c,8GAE/B,OACL,mD,iIAGK,O,iCAEJ,gC,CAED,mBACA,wb,2HAKK,OACL,kF,mZAGK,O,iCAEJ,O,CAED,mBACA,8IACA,4GACA,4GACA,4GACA,4G,sWAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKwB,cAAnB,OACL,8B,cAKC,oE,CAED,+BACA,0D,6HAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,gGAIa,cACb,0BACA,yCACA,2C,qEAcK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,qJAGK,O,iCAEJ,kC,CAED,mBACA,kgC,iIAUK,OACL,kF,geAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,2H,qbAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uHACA,sIACA,uHACA,sIACA,uHACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,iGAIe,cACf,0BACA,yCACA,4C,uEAcK,OAAqC,oB,mHAErC,OAA+B,c,gHAE/B,OACL,mD,qHAGK,O,iCAEJ,0B,CAED,mBACA,uH,6HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,6N,mSAGkC,oBAA7B,O,iCAEJ,O,CAED,mBACA,mG,gIAKwB,cAAnB,OACL,8B,cAKC,qE,CAED,+BACA,2D,+HAQK,O,mBAEJ,Y,CAED,0BACI,wDACC,kC,8GAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAuC,sB,mHAEvC,OAAiC,c,gHAEjC,OACL,qD,6HAGK,O,iCAEJ,4B,CAED,mBACA,oR,iIAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,oJACA,sIACA,uH,uUAGsC,sBAAjC,O,iCAEJ,O,CAED,mBACA,sIACA,uH,oIAK0B,cAArB,OACL,8B,cAKC,qE,CAED,+BACA,2D,qIAQK,O,mBAEJ,Y,CAED,mCACI,wDACC,kC,2OAEF,a,CAFmB,W,CAKrB,kBACA,kBAPwC,W,CASzC,Y,+GAqBK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,oHAGK,O,iCAEJ,yB,CAED,mBACA,sH,2HAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,2N,kSAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,mG,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAcK,OAAsC,qB,mHAEtC,OAAgC,c,gHAEhC,OACL,oD,4HAGK,O,iCAEJ,2B,CAED,mBACA,mR,+HAKK,OACL,kF,iXAGK,O,iCAEJ,O,CAED,mBACA,iJACA,sIACA,uH,sUAGoC,qBAA/B,O,iCAEJ,O,CAED,mBACA,sIACA,uH,kIAKyB,cAApB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIc,cACd,0BACA,yCACA,4C,sEAcK,OAAoC,mB,mHAEpC,OAA8B,c,gHAE9B,OACL,kD,kIAGK,O,iCAEJ,+B,CAED,mBACA,ub,2HAKK,OACL,kF,qZAGK,O,iCAEJ,O,CAED,mBACA,2IACA,4GACA,4GACA,4GACA,4G,wWAGgC,mBAA3B,O,iCAEJ,O,CAED,mBACA,4GACA,4GACA,4GACA,4G,8HAKuB,cAAlB,OACL,8B,cAKC,qE,CAED,+BACA,2D,iHAQK,OACL,Y,iGAIY,cACZ,0BACA,yCACA,4C,oEAgBK,OAAwC,iB,mHAExC,OAAkC,c,wHAElC,O,0BAEJ,iB,C,iCAGA,kG,CAED,mBACA,0M,mHAKK,OACL,kF,6UAGK,O,iCAEJ,O,CAED,mBACA,4M,mSAGK,O,iCAEJ,S,CAED,mBACA,qG,mJAGK,O,iCAEJ,O,CAED,mBACA,iG,0IAK2B,cAAtB,OACL,8B,cAKC,+E,CAID,+BACA,uF,+ZASK,OACD,YACJ,0BACI,wDACH,wJACC,wE,KAED,kBACA,kBALwC,W,CAOzC,oJACC,qG,OACC,kB,OAED,iG,mBAEC,a,C,yBAGF,Y,oUAIgB,cAChB,0BACA,yCACA,8C,sSCj+BK,O,oJ,kQAIA,OACL,S,uHAGK,OACL,W,+GAGK,OAAiC,sF,8GAEjC,OAAuC,W,kSAGvC,OACL,mGACA,iB,2NAIA,qB,iEC5BK,YACL,IACA,UACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+BACD,gBACC,+B,CAED,mC,mIAwBK,OACL,oB,mHAGK,OACL,c,gHAGK,OACL,mD,2HAGK,O,iCAEJ,8B,CAED,iBACA,iBACA,iT,2HASK,OACL,wE,yJAKK,OACL,mBACA,UACC,8OACD,gBACC,oZACD,gBACC,8OACD,gBACC,8OACD,gBACC,oZ,CAGD,wE,4HAKwB,cAAnB,OACL,8B,cAKC,sG,CAID,6BACA,6BACA,yH,iHAWK,OACL,Y,wJAIa,cACb,0CACA,IACA,UACC,oMACA,IACD,gBACC,oMACA,oMACD,gBACC,IACA,oMACD,gBACC,oMACA,IACD,gBACC,0MACA,gN,MAGA,IACA,I,CAED,2CACA,2CACA,2CACA,qBACA,yG,msZ,4F,4F,4F,4F,6K,8C,qD,qD,iE;8eCzJoE,oBAArC,wBAgB/B,uCACA,uCACA,0BACA,0BACA,mBAEA,UACK,uDACH,uCACA,sEAEA,sEACI,yCAGH,iHACA,4GACA,4GACA,mCACA,yDACA,qC,QAEC,I,gBAEA,M,C,QAGA,I,gBAEA,M,C,SAGA,K,iBAEA,O,CAGD,iHACA,iHACA,kHACA,wGA5BqB,8CALS,+BAqCjC,gBACK,8DACH,yCACA,wEAEA,sJACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,wUACI,8DACH,qGAGA,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA7B+B,oDALD,mCAsCjC,gBACK,8DACH,yCACA,wEAEA,0PACI,2CAGH,yHACA,oHACA,oHACA,sCACA,6DACA,uC,SAEC,K,iBAEA,O,C,SAGA,K,iBAEA,O,C,SAGA,K,iBAEA,O,CAGD,sHACA,sHACA,sHACA,4GA5BqB,oDALS,mC,M,iB,C,gB,mM;wyBCjFjC,wBACA,0MACA,uSACA,mE,OACC,yS,OAED,iBACA,iB,qBAEC,O,CAED,eACA,e,iBAEC,eACA,e,C,6PAIkE,oBAApC,wBAC/B,8G,qOAMwD,oBAApC,wBACpB,8H,m3CAK8F,0BAAlC,0BAApC,8BACxB,0G,iBAEC,O,CAID,4GACA,gBACC,uC,OACC,gE,OACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,iBACC,iBACA,OACD,iB,+BAME,O,C,eAEF,iBACC,iBACA,OACD,iBACC,iBACA,O,Q,sBAEQ,4E,QACT,iEACA,iBACC,uGACA,O,Q,Q,Q,qBAIF,kE,QACC,uSACA,iBACC,gGACA,OACD,iBACC,iBACA,OACD,kBACC,kBACA,OACD,kB,gCAEE,O,C,eAEF,kBACC,kBACA,OACD,kBACC,kBACA,O,Q,Q,OAIH,8GACA,OACD,iBACC,8F,QACC,4GACA,O,Q,OAIF,mDACA,mD,qBAEC,8CACA,8C,CAGG,+BACJ,gCACA,gCACI,kDACH,gCACA,gCACI,kDACH,SACA,qE,QACC,6M,QAED,oFACA,QACC,yC,Q,uBAGC,gJ,Q,eAEF,QACC,sN,uBAEA,wOACA,yC,QACC,wOACA,gIACA,8JACA,8JACA,8JACA,8J,uBAEA,mIACA,mIACA,mIACA,mI,QAMD,sG,QAjCoB,6EAHD,6E,m7CA0CY,wBAClC,sHAEA,iCACA,+BACA,yBACI,qDACC,kCACH,gHACA,gHACA,gHACA,iHAEA,8PACA,8PACA,8PACA,+PAToB,W,CAWrB,kBACA,kBAb+B,W,C,oyBAiBC,wBACjC,sHACA,yBACA,yBACA,yBACA,yBAIA,+BACA,yBACI,kCACH,0GACA,0GACA,0GACA,0GAJoB,W,CAMrB,uBACI,qDACH,kBACA,kBACA,mCAHkC,a,C,+bAOmC,oBAApC,wBAClC,0BACA,+BACA,uBAEC,gBACA,wB,+CAGA,WACA,WACA,iC,MAIA,sCACA,sCACA,YACA,YACA,8C,CAED,8BACC,sBACA,sBACI,2CACH,gIACA,gIACA,gIACA,gIAEA,iHACA,iHACA,iHACA,iHAGA,mCAEA,yPACA,yPACA,yPACA,yPAjBqB,a,CAmBtB,WACA,WAvBa,W,C,2DA2BuD,oBAApC,wBACjC,mCACA,+BACA,uBACI,gB,iBAEH,WACA,W,MAOA,sCACA,sCACA,YACA,Y,CAED,8BACC,oEACA,WACA,WAHa,W,C,sJAO0D,oBAArC,wBACnC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,6GACA,6GACA,6GACA,6GAGA,kCAEA,oPACA,oPACA,qPACA,oPAlB6B,+BAJd,+B,+GA2BsD,oBAArC,wBAClC,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CAEH,uHACA,6MACA,6MACA,kNAEA,2HACA,2HACA,4HACA,2HAV6B,+BAJd,+B,iFAmBiD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,uFACA,kGACA,kGACA,kGACA,oGAL6B,2BAJd,2B,6FAciD,oBAApC,wBAC9B,uCACA,uCACA,mCACA,0BAEA,0BACA,sBACA,qCACC,uCACA,uCAEI,8CACH,8rBAEA,oGAH6B,+BAJd,+B,6wBAY4E,oBAA1D,wBACnC,+BACA,yBACA,uBACA,sHACI,mEACC,8CACH,uG,UAD6B,qC,CAK7B,uBAEA,yHACA,yHACA,yHACA,yHAGA,iJAEA,+QACA,+QACA,+QACA,+QAlB6B,+BAoB9B,kBACA,kBACA,kBAvByC,+B,8vDA2B0D,oBAAlC,oBAApC,wBAC9B,oCACA,oC,4D,8CAGE,mCACA,mC,C,CAIF,yBACA,yBACA,yBACA,yBACA,oBACA,oBACA,cACI,8CACC,8EACH,SACA,mE,OACC,yM,OAED,sO,UAEC,0HACA,0HACA,0HACA,0HAQA,mJAEA,kRACA,kRACA,kRACA,kR,MAGA,uPACA,uPACA,uPACA,uP,CA7BwC,yEAgC1C,+BAjCqB,wE,s5B,QAwCrB,S,C,YAGA,a,CAED,S,iCAQI,I,QAEH,iB,MAEA,iB,CAED,iC,msCAGgE,oBAApC,wBAS5B,kCACG,0E,OACF,mCACA,oJACC,sHACA,+FACA,+FACA,+FACA,+F,yBAED,uE,OAMG,gC,MAEH,gCACA,gC,CAID,mCACI,mDACC,mDAGH,sPACA,oE,MAEC,iNACA,iNACA,iNACA,iN,CAGD,iD,QAIC,+BACA,iKACC,mE,UAEC,wB,WAEC,M,C,C,MAIH,+H,OA1BuB,a,c,CA+BvB,sGACA,sGACA,sGACA,sG,uBAGA,qBACA,qBACA,qBACA,qBAKA,4HAEA,sC,QA/CuB,a,c,QAkDvB,8PACA,mBACA,mBACA,mBACA,mB,Q,WAID,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iN,WACA,iNAzEwB,a,qB,MA8ExB,wBACA,yDACC,8G,M,CAjFsB,a,qB,2hC,4F,4F;w/ECrkBzB,if,imBAgBmC,sBAInC,oC,OACI,yJ,OACF,S,OAED,O,OAGD,4H,OACC,iB,OAED,iI,OACC,iR,QAGD,iEAQA,8FACA,yCAEA,mBACA,IACI,8HACH,2HACA,+H,0CAF4B,W,e,CAM5B,mNAMA,WAZ4B,W,uB,kBAe5B,iB,CAED,iCACA,uCACA,iB,udChDA,aACA,aACA,uBACA,uBAEA,gM,qCAiBA,yDAKA,oB,6RAIA,kJ,sCAEC,iB,CAED,yBACA,sE,+OAOK,O,yC,yGAIA,O,uDAGJ,O,CAED,gC,2HAGK,OACL,aACA,cACA,qC,yIAGK,O,qCAEJ,mB,CAED,aACA,cACA,a,YAEC,+CACA,mE,CAED,cACA,mB,iZAGK,OACF,qB,sCACF,S,CAED,sHAEA,UACA,UACA,UACA,UACA,kC,siBAGK,OACF,qB,sCACF,S,CAED,uBACA,0H,8gBAGK,OACL,yBACA,sBACA,sI,sPC5HA,WACA,kBACA,kBACA,kBACA,kBACA,mBACA,c,kgBCeA,oJ,sCAEC,S,CAED,oEAEA,sJ,sCAEC,S,CAED,oEAEA,8F,sCAKC,S,CAKD,0DAEA,uBACI,sCACH,+IACA,+IACA,+IACA,+IACA,+IACA,+IANoC,iB,CAQrC,kEAEA,uBACI,0CACH,kGAD6B,W,CAG9B,kEAEA,iB,sX,+BAKC,a,CAEG,0C,qLAEF,a,CAFsB,W,CAKxB,Y,0YAmBK,OACL,Y,0BAEC,wBACA,qBACA,UACA,UACA,U,CAED,4BAEA,2D,OACC,oJ,gBAEC,qB,CAED,kC,OAGD,8GACA,8GACA,8GACA,8GACA,8GACA,8GACA,4CAMA,4C,QACC,oI,gBAEC,qB,CAED,iB,QAGD,wHAEA,YACI,uCACC,uCACH,0PADkB,W,uBADD,W,uBAMnB,4IAMA,4C,QACC,gI,gBAEC,qB,CAED,iB,QAED,4CAGA,4IAIA,yBAEA,kIACA,qIAEA,+IACA,iJ,2hBAGK,OACL,YACA,oIACA,iI,yNCjKA,4C,4BAEC,8BACA,6B,CAED,S,4VCVA,gXACA,uEAOG,qO,OACF,S,OAGD,eACA,8OAIA,yGACA,S,sRASK,O,yC,yGAKL,OACA,O,QAEC,4D,C,QAGA,6D,CAED,6D,sCAEC,iB,CAED,sD,oTAIA,kM,UAEC,4D,C,UAGA,6D,CAED,uFACA,oCACA,gE,sCAEC,iB,CAED,0D,uPAGK,OACL,4B,6HAGK,OACL,0BACA,oCACA,iB,ynG,4F,4F,4F,4F,4F,4F,4F,iO,Q,0B;6hDCrEK,OACL,yE,OAEC,O,CAED,yF,yHAGK,OACL,yE,OAEC,O,CAED,0F,mHAGK,OACL,uBACA,IACA,UACC,qBACD,gBACC,qBACD,gBACC,qB,C,yHAII,OACL,uBACA,IACA,UACC,sBACD,gBACC,sBACD,gBACC,sB,C,gIAII,OACL,gC,iLAGK,OACL,oB,8BAEC,O,CAED,kBACA,yBACI,kCACH,O,4BADoB,W,S,CAMpB,SACA,yBACA,4FACI,mC,SAEF,gKAFwC,W,S,CAKzC,gLALyC,W,CAQ1C,YACA,yBACA,8FACI,oC,SAEF,6KAFiD,W,S,CAKlD,wLALkD,W,CApB/B,W,C,kGCnDrB,kE,oMAIA,sF,yL,8C,qCAQA,e,yMAIA,gH,iIAIA,qB,wCAIA,iB,wDAIA,uCACA,0BACA,6CACA,Y,2DAIA,0BACA,0BACA,6CACA,Y,gDAWA,mC,sOAIA,qBACA,OACI,2BACJ,iD,WAEE,iBAGA,4DACA,O,CAED,a,YAED,yFACA,8F,mUAIA,uFACA,mCACC,uF,qBAED,mBACA,iB,0N,iHAQA,a,kH,0T,mCAUC,O,CAGD,mBACA,iBACA,+C,OACC,qBACA,qGACC,a,aAED,8F,OAGD,mDACA,YACA,aACA,uBAEA,0BACA,sCACA,mCACA,oCAEA,eACA,+CACA,4CACA,sCACA,mCACA,oCACA,2GACC,W,aAGD,WACA,4CAGA,oDACA,8CAGA,8GACC,mBACA,0BACA,a,aAED,4GACC,mBACA,0BACA,W,aAID,gHACC,mBACA,yBACA,eACA,M,aAED,8GACC,mBACA,yBACA,aACA,M,aAED,8GACC,mBACA,M,aAED,gHACC,mB,aAKD,mHACC,mBACA,eACA,mBACA,OACA,M,aAED,iHACC,mBACA,aACA,mBACA,OACA,M,aAED,kHACC,mBACA,mBACA,OACA,M,aAID,oH,a,0MAMA,uCACA,6BACA,4DACA,gCACA,+BACA,4L,2BAKA,gD,UAEC,I,CAED,S,wFAGK,OACL,mBACA,gCACA,uBACA,WAEA,6C,oC,qIAKA,6C,UAGC,Y,CAED,8GACA,+GACA,Y,yIAGK,OACL,yBACA,uC,8BAEC,a,CAGD,gBACA,oBACA,qBACA,yBACA,+BACA,WAEA,aACA,aACA,6CACA,8CAEA,kEACA,iEACA,Y,q8E,4F,4F,mJ,w1B;8+ICpPA,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,gMACA,wGAFoB,W,qBADC,W,qB,qdASvB,yFACA,iI,OACC,mE,OAGG,4CACC,qCACH,IACI,6CACH,sMADsB,W,sBAIvB,gD,QACC,sG,QAED,wGAToB,W,qBADC,W,qB,sOCrBlB,OACL,S,uGAGK,OACL,mBACA,aACA,aACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIuB,oBAAlB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIoB,oBAAf,O,mBAEJ,e,CAED,gCACA,iGACA,e,2QAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKACA,kKACA,kKAJ0B,W,C,uIAStB,O,mBAEJ,e,CAED,0BACA,0BACA,0BACA,0B,8VAIK,OACL,4BACA,YACA,wDACA,wDACA,6S,mTAYK,O,mBAEJ,e,CAED,qJ,wHC9FK,OACL,S,uGAGK,OACL,mBACA,aACA,a,6HAIK,O,mB,UAGH,S,CAED,S,CAED,yJ,8SAIqB,oBAAhB,O,mBAEJ,e,CAED,gCACA,iGACA,e,8aAIkB,oBAAb,O,mBAEJ,e,CAED,gCACA,iGACA,e,2PAIK,O,mBAEJ,e,CAEG,kCACH,kKACA,kKAFwB,W,C,uHAOpB,O,mBAEJ,e,CAED,0BACA,0B,wTAGK,OACL,4BACA,oN,qRAUK,O,mBAEJ,e,CAED,qJ,8GC9EA,IACA,UACC,iBACD,gBACC,gB,CAED,iC,gMCbA,sNACC,2F,wL,kVAKD,8BACG,qK,OACF,iB,OAED,oB,uVASK,OACL,mH,kcAGK,OAEF,kL,OACF,S,OAGD,gBACA,qFACA,kBACG,gM,OACF,S,OAED,iB,kgBAGK,UACL,sE,OACC,kH,OAED,yD,OACC,qG,OAGG,YACJ,ySACC,0E,sCAEC,O,CAGD,oD,sCAEC,O,CAED,gI,sCAEC,O,CAED,6BACA,yDACA,cACA,sB,oQAED,S,iSClDK,O,gBAEJ,kD,C,yC,2SAMI,O,mB,8C,C,0J,4bAQA,U,sB,oD,CAIL,mBACA,+NACC,kH,0MAED,Y,iiBAiBK,U,sB,oD,C,gB,uF,CAOL,mB,kBAEC,wF,CAED,kB,mCAGC,a,kBAEC,4D,MAEA,4BACA,kB,C,CAGF,4BACA,uBACA,mOACC,4J,8MAED,Y,mUAIK,OACL,yBACA,uB,+GAIK,OACL,mB,4dAMK,U,sBAEJ,kD,CAED,sD,OACC,6OACK,YACJ,oI,sCAEC,U,C,oN,OAIH,qBACA,uBACA,0CACA,ucACA,4D,mhBAOK,U,sBAEJ,0C,CAED,iDACC,4BACA,wBACA,wBACA,oB,wFAED,mBACA,+BACA,iB,iOAGK,OAIL,kD,mXAQK,U,sBAEJ,0C,CAGD,mBACA,4BACA,wBACA,uD,OACC,iP,OAEG,eACJ,qDACC,wC,4FAED,Y,weAoDI,YACA,eACJ,8QACK,SACA,SACJ,2I,yCAEC,O,CAED,mI,yCAEC,O,CAED,gC,+O,yCAGA,oB,CAED,uDACA,uB,kLC/NK,OACL,iB,+IAGK,OACL,2F,wE,iJAIK,OACL,2F,wE,gHASK,OACL,S,qIAGK,O,6D,uIAIA,O,6D,yFAKL,6H,kCAIA,6H,oNASK,OACL,gH,scAGK,O,wJ,wmBAIA,OACL,4HACA,6B,wE,oeCpEA,2FACA,yCACC,kB,mFAED,S,g1BCgBA,gBACA,qCACC,iB,QAGD,iC,sCAEC,S,CAED,iCAEA,mMACC,6F,mLAGD,yG,sCAEC,S,CAGD,IACA,UACA,UACA,OACC,gG,OACC,QACA,I,8CAEC,sEACA,OACA,I,C,wBAGA,oDACA,OAEA,I,CAED,mC,OACC,iDACG,+K,QACF,U,Q,O,OAIH,oBACA,qBACA,oBAEG,6K,QACF,U,Q,iBAGA,iB,CAED,W,oGAGC,K,CAED,wFACC,0EAEG,8K,QACF,U,QAEE,4K,QACF,U,Q,uBAGC,+K,QACF,U,QAGD,gBAGA,WACA,W,6IAEC,uEACA,KACA,I,C,qB,0iM,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,wG,6B;4xG,SCjHD,4DACA,O,CAED,Y,gBAEE,4DACA,O,CAMD,SACA,4DACA,WACA,W,C,4BCeD,oD,qCAKA,UACA,aACA,SACI,IACA,oCACC,IACA,IAEJ,4BAEC,gBACA,IACA,MACD,gBAEC,gCACA,IACA,MACD,gBAEC,iBACA,IACA,M,MAGA,gCACA,I,EAED,uFACA,6FAzB2B,iB,CA2B5B,S,iCAIA,SACA,aACA,SACI,mCACH,uFACA,6FAF6B,iB,CAI9B,S,2CC5DK,OACL,uF,gHAMK,YAAkC,kC,mSAQlC,OACL,4K,qUA8DK,O,mBAOJ,4C,CAKG,YACA,gBACJ,qI,UAEE,a,C,iBAGA,I,C,QAGA,I,CAED,+I,K,UAWA,Y,CAGD,IACI,YACA,mCACH,2BACA,qEACA,4EAHuB,W,C,iEAYvB,a,CAGD,Q,QAEC,yCACA,0BAGA,cACA,kCACI,0CACH,4LACA,uBACA,gBAIA,4GACA,kHAR0C,Y,C,CAY5C,iJ,WAEE,c,CAED,yEACA,qJACA,yBACA,+LACA,wC,UAEK,uCASH,yFATwC,8C,C,MAYzC,UAMA,iGACA,2GACA,yBACI,8CAIH,8FAJuC,qD,C,C,MAiC1C,Y,yUAiDK,O,e,qBAGH,qCACA,O,CAED,YACA,O,CAED,oCACI,yK,OACF,O,O,qBAGF,6BACA,iCACA,cACA,iCACA,kBACA,6FACA,OACC,kG,eACD,OAEC,OACA,YACA,qG,eACD,OAEI,gL,QACF,e,QAED,UACA,UACA,qG,sBAGA,2C,Q,gdAII,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,4F,qB,gPAII,O,mCAEJ,iB,CAED,a,itBAQK,OAEL,qCACI,iK,OACF,S,O,qBAGF,6B,UAEC,2C,CAED,iCACA,2B,SAEC,2C,CAED,iCACA,2BAEA,iCACA,mBAGI,qCACH,oCACI,qK,QACF,S,Q,qBAGF,uLACA,iCACA,kBARsB,W,qBAUnB,mCACH,sKADmC,W,C,gDAInC,2C,CAKG,wDACH,yH,uCAEC,U,CAED,yC,QAEC,gGACA,WACA,e,QAGG,KACA,KACA,KACJ,MAGA,YACC,KACA,K,UAEC,8C,CAED,+GACD,kBACC,KACA,KACA,KACD,kBACC,MACA,KACA,K,MAfA,wC,CAiBD,uCACI,6K,QACF,U,Q,uBAGF,kEACA,qCACA,mB,gBAEC,8C,CAEG,qCACH,gGACA,WAFoB,a,C,uB,gGAOrB,8C,CAGD,iB,w/BAOK,OACL,OACC,+G,sCAEC,QACA,O,CAEG,IACA,IACJ,qPACA,OACC,6GACA,iB,iBAGC,wCACA,O,CAED,c,eACD,OAEC,mCACA,OAED,OACC,WACA,I,eACD,OACC,sBACA,I,eACD,OACC,uBACA,I,eACD,OACC,uBACA,I,eACD,QACC,wBACA,I,eACD,QACC,wBACA,I,eACD,QACC,MACA,I,uBAEA,2CACA,O,QAED,uC,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,4DACA,iCACA,kB,QAGG,IACJ,iD,QACC,sCACI,qK,QACF,QACA,O,Q,uBAGF,wGACA,iCACA,kB,uBAEG,sL,QACF,QACA,O,Q,QAIF,gEACA,QACC,W,eACD,QACC,yBAEA,+BACA,sCACI,qK,QACF,QACA,O,Q,uBAGF,yDACA,iCACA,kBACA,iD,uBAEA,8CACA,O,Q,YAKA,qCACA,O,C,qBAKA,8CACA,O,CAGD,qC,iBAEC,O,C,qB,sdAOG,OACL,qB,QAEC,e,CAED,sCACC,YACG,gB,QACF,I,CAEE,a,QACF,I,CAED,2BACA,WACA,iBACA,2B,iBAGC,oCACA,Y,C,cAGA,I,C,CAGF,a,+QAGK,O,iBAEJ,O,CAED,mG,+dAIK,OAGL,OACA,MAGA,4IACA,oF,sCAEC,8BACA,O,CAED,sCACA,sC,2CAEC,2CACA,O,C,UAKA,qCACA,O,CAGD,YACA,+F,8gBAKK,OACL,YACA,iCACC,gB,QAEC,I,CAED,0JACA,oF,sCAEC,8BACA,O,CAED,WACA,iB,iBAEC,YACA,oCACA,O,C,qBAGF,mC,kSAGK,O,oBAGJ,oC,CAGD,kC,iBAEC,OACA,a,CAED,U,8UAGK,OACL,8G,sC,+BAGE,qB,CAED,S,CAED,oFACA,mDACA,kBACA,iB,siBAIK,OAKL,cACA,OACC,oCACI,iK,OACF,Y,O,qBAGF,kGACA,qB,QAEC,2OACA,qB,C,Y,UAIC,2CACA,gB,CAED,iCACA,kBACA,mC,C,qB,6UAMG,OACL,6CACA,iGACA,U,iBAEC,OACA,OACA,a,CAED,S,6FAIG,uC,MACF,S,CAED,sB,sDAGK,OACL,qP,kBAQC,a,CAED,iB,6FAYI,sOACJ,iBACA,qBACA,UACA,iBACA,mCACA,S,oDAWI,sOACJ,UACA,iBACA,iBACA,qBACA,mCACA,aACA,S,sDC/vBA,6N,kCAIA,sD,k0I,4F,4F,4F,4F,4F,4F,66E,6E,k7B,Q;svB;mQCdK,OAAqB,U,0BAI1B,uBACA,UACA,S,8DAGK,OAAwB,S,wDAExB,OAA6B,S,uDAIlC,qDACA,sCACK,Q,mBAEH,kD,CAED,qIACC,kBACA,Y,KAED,qEACA,qEACA,I,CAED,kC,+EAGK,OACL,sB,4C,oDAIK,OAA4B,qB,uDAE5B,OACL,iBACA,sG,2BAImC,mB,imB;y2BCRnC,6G,gVASA,8DACA,8F,sCAEC,oB,CAED,oB,ihBAGK,O,0C,gC,C,kB,oC,CAQL,sHACA,gH,8CAEC,QACA,Y,CAIE,2M,OACF,Q,4B,OAID,iIACA,0I,OACC,uB,gC,OAGD,Y,8fAIK,O,0CAEJ,a,CAED,4GACA,a,kgBAGK,OACF,6C,MACF,M,MAEA,mB,CAED,wI,sCAEC,S,CAED,uD,iHAEC,sB,CAED,mCACA,mC,OACC,wI,sCAEC,S,CAED,iI,2BAEC,0B,C,OAGF,6E,O,MAEE,sC,MAEA,gC,C,qBAGD,mI,OAED,iBACA,iB,6gC,4F,4F,4F,4F,4F,4F,4F,iD,qD;sXCrE0C,4M,mHAG1C,0GACA,2F,sHAIA,yY,mHAIA,sGACA,sGACA,qGACA,2F,kJAIA,quC,mHAKA,sHACA,sHACA,sHACA,sHACA,sHACA,sHACA,qHACA,gG,mHAGkC,kB,yGAEE,yB,81B,4F,4F,4F,uH;upBCjDpC,WACI,oCACH,UACI,kC,oBAEF,wB,MAEA,6B,CAJiB,W,CAOnB,gFAToB,W,CAWrB,S,2CAKA,WACA,+BACI,oCACH,2FACI,kCACH,6HACA,yJAFkB,W,CAFC,W,CAOrB,S,2BAWkC,sB,mCAIN,yB,4DAEvB,OAAwB,S,wGAExB,OAA6B,S,8GAE7B,OAAqB,Q,mGAG1B,SACA,qIACC,oI,KAED,a,mEAKA,SACA,sCACC,iZACA,gpCAGA,iB,CAED,SACA,gC,+M,kBAMC,c,CAGD,6E,OACC,6BACC,gB,mFAED,gB,OAED,gB,wYAGK,OACL,sG,4C,+PAIK,OAA4B,a,yGAE5B,OACL,YACA,sG,qFChKA,gB,8uB,4F,qJ;m3DCDA,WAOA,wB,mEA6BI,gDACA,kCACH,gBACI,0CACH,4FACA,SACA,SACA,YACA,OACA,O,e,eAIC,I,MAEA,I,CAED,mGACA,UACA,kGACA,IAjB0B,W,CAFG,W,C,2BCE/B,mB,0CAsEK,YAAgC,gC,qHAOhC,YAAqC,qC,0G,QAIzC,S,CAED,S,4XAGK,O,gBAEJ,gC,CAEE,yM,OACF,S,OAED,0H,uBAEC,mC,C,uBAGA,8B,C,2CAGA,yC,CAED,2BACA,wDACA,wD,aAEC,mC,CAED,0C,uGAEC,mC,CAED,OACA,sBACA,UACA,UACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,O,CAEF,gBACC,WACA,UACC,OACD,gBACC,OACD,gBACC,QACD,gBACC,OACD,gBACC,Q,CAEF,iBACC,WACA,UACC,QACD,gBACC,QACD,gBACC,QACD,gBACC,Q,C,CAGF,0C,OACC,sM,OAED,uCACA,uH,iuBAGK,OACL,6F,+HAEC,gC,CAED,uJ,sCAEC,S,CAED,yHACA,OACA,gCACC,oCACI,kCACH,wbADmB,W,CAGhB,oCAMH,2JANqB,W,CAQtB,mCACD,wC,MAIC,0C,CAED,qH,0qBAGK,O,UAEJ,gC,CAED,4I,sCAEC,S,CAED,yHACA,OACA,kBACC,uCACD,wBACC,uCACD,sC,wBAEE,mC,CAEG,kCACH,wIACA,2OAFkB,W,CAIpB,wCACC,0C,CAED,qH,6kBAUK,O,kBAEJ,oB,CAED,8CAEI,uK,OACF,Y,OAIE,wM,OACF,Y,OAED,8D,6DAEC,yC,CAED,gGACA,2H,qB,wBAGA,8C,CAED,yJACA,+GACA,wCACA,Y,ywBAIK,OACL,8G,sCAEC,oB,CAED,2CACI,YACJ,oF,OACC,0H,sCAEC,oB,C,c,OAID,iI,sCAEC,oB,CAEG,qCACH,0H,sCAEC,oB,CAED,qE,QACC,2G,QANuB,W,qB,OAY1B,IACI,2E,YAEF,kC,CAED,sIAJiC,W,uBAMlC,oG,QACC,kI,Q,sCAGA,+C,CAGD,oB,2tEAIK,OACD,IACJ,IAEC,SACA,SACA,SACA,SACA,SACA,SACA,SACA,YAED,6B,0BAEC,iGAEA,sIACA,sI,qBAKC,4B,C,CAGF,OACA,+BACC,UACA,6BACA,IACD,gBACC,KACA,8BACA,IACD,gBACC,KACA,6BACA,IACD,sCACC,UACA,2CACA,IACD,iBACC,KACA,8BACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,IACD,iBACC,KACA,+BACA,IACD,iBACC,KACA,gCACA,I,C,MAGA,oB,CAED,gGAGA,gHAEA,oBACA,oBAEI,uCAEH,kH,uC,0EAGE,iD,CAED,qB,CAID,mBACA,mBACA,oFACA,WAEA,iBACK,6CACH,2SADsC,a,CAGxC,iBACC,uJACC,sM,MAEF,iBAIK,oCACH,wXAD8B,a,CAG3B,6CACH,2fADsC,a,CAGxC,iBACC,W,MAEA,2C,CAID,QACA,WACK,oCACH,+LACI,kDACH,wEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACK,oCACH,+LACI,kDACH,uEACA,sCAFoC,a,CAFf,a,CAOxB,iBACC,kCACA,kBACD,iBACK,oCACH,sHACA,+JAFsB,a,CAIxB,iBACC,qCACI,oCACH,gNACA,gNACA,gNACA,4GACA,aACA,aANsB,a,CAQvB,kBACD,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,iBACK,oCACH,+LACI,kDACH,mB,+BAEC,gD,CAED,gCACA,sCANoC,a,CAFf,a,CAWxB,kB,iCAEM,oC,uHAEF,wI,CAFqB,a,C,CAMxB,kCACA,kBACD,kBACC,kCACA,kBACD,kBACK,oCACH,mRACA,wCAFsB,a,CAIxB,kBACK,oCACH,mRACA,mRACA,mDAHsB,a,CAKxB,kBACK,oCACH,mRACA,mRACA,mRACA,oDAJsB,a,CAMxB,kBACK,oCACH,mRACA,mRACA,mRACA,mRACA,mDALsB,a,C,CAUxB,wBAnKuB,a,qBAsKxB,oB,mqEAIK,OACL,iGAEC,SACA,SACA,IACA,iEACA,IAED,IACA,uCACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,8EACA,IACD,6CACC,wBACA,gFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,IACD,8CACC,wBACA,uFACA,I,CAED,4JACI,kDACH,yGACI,kDACH,0CACA,sDACA,aAHwC,a,CAFD,a,C,25BAUpC,OACL,eACA,8G,sC,a,C,yH,ybAOK,O,eAEJ,gC,CAED,qH,2iBAGK,OAEL,4I,sCAEC,S,CAED,mDACA,gGACA,yHAGA,mNACA,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qHACD,O,mDAEE,gB,CAED,UACA,qHACD,O,qBAEE,gB,CAED,UACA,qH,OAGG,YACJ,mCACC,uJ,sCAEC,S,CAED,uHACA,kB,uBAED,yH,oiBAGK,OACF,wM,OACF,S,OAED,sL,OACC,iC,OAED,iB,ycAGK,OACL,qI,sCAEC,S,C,0EAGA,+B,CAED,iB,kbAMA,2EAIG,oK,O,+BAED,qB,CAED,oB,OAED,8CACI,mK,O,+BAED,qB,CAED,oB,O,qBAGF,wB,2YAMA,2EAIG,oK,O,+BAED,qB,CAED,0C,OAED,OACI,mK,O,+BAED,qB,CAED,0C,OAED,U,sBAEC,c,C,qBAGA,c,C,qBAGE,YACJ,OACA,+BACC,cACD,gBACC,eACD,gBACC,cACD,sCACC,YACD,iBACC,eACD,iBACC,gBACD,iBACC,iBACD,iBACC,gBACD,iBACC,iB,CAED,uD,6LAQA,gD,k7E,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,iJ,uB;+S,4F,4F,4F;qgB,4F,4F,4F,4F,4F,4F,4F,4F,4F;4Q;+5CCxvBK,OACL,6CACC,8G,sCAEC,Y,CAED,4DACA,wB,qBAED,sEACA,6CACA,8BACA,oB,yfAIK,OACL,6CACC,8G,sCAEC,Y,CAED,uEACA,wB,qBAED,8DACA,4CACA,8BACA,oB,icAGK,OACL,O,uBAEE,yBACA,+BACA,oB,C,0CAGA,gB,CAED,6F,qB,ipBAOI,OAEL,OACC,yG,sC,+BAGE,qB,CAED,QACA,UACA,O,CAGD,cAEC,mGACA,e,wBAGC,oGACA,8F,CAEF,sBACC,+BACA,WACA,8CACA,aACA,cACD,oBACC,UACA,YACA,OACD,kBACC,mB,aAKC,SACA,qCACC,kF,CAED,6FACA,WACA,S,CAGD,qCACC,gKACA,WACA,kF,CAED,6FACA,qF,wBAGC,oGACA,8F,C,MAGD,iCACA,UACA,O,CAED,0C,qB,iBAGE,a,MAEA,wBACA,sD,C,C,cAID,UACA,O,C,qB,6aAKG,OACL,0CACA,M,sGAKK,OACL,QACA,iB,iWAaA,4GACA,IACA,UACC,gCACD,gBACC,gC,MAEA,kCACA,S,CAED,0C,OACC,oJACA,S,OAEE,iD,MACF,M,MAEA,mB,CAED,aACA,sBACA,2CACA,yDACA,8CACA,aAEA,S,84D,4F,4F,4F,4F,wC;+9ECxJK,O,0CAEJ,gB,C,kBAGA,oB,CAED,qD,OACK,IACJ,kH,0CAEC,gB,C,UAGA,YACA,gB,CAED,qCACG,2L,OACF,gB,O,OAGF,wBACA,6BACA,oB,+gCAIK,OAEF,sC,MACF,M,MAEA,mB,CAGD,mH,sCAEC,S,C,MAGA,iB,CAGD,OACC,8G,sCAEC,S,CAED,gGACA,OACI,0K,QACF,S,Q,cAGF,OACC,4H,sCAEC,S,CAED,qCACA,qC,QACC,yI,sCAEC,S,C,uB,uCAIA,oC,CAED,6B,Q,qE,OAKC,uH,CAED,8K,CAED,uH,sCAEC,S,CAED,8C,QACC,4L,QAGD,6CACA,oHACA,4CACG,4L,Q,+CAED,S,CAED,S,QAaE,gR,Q,uCAED,U,CAED,S,QAEE,iO,Q,uCAED,U,CAED,S,Q,0BAKA,oJ,+BAEE,S,C,M,C,sCAOF,K,CAGD,2BACA,qCACA,gDAIA,cACA,4B,cAED,O,wBAEE,0B,CAED,iB,OAGA,gL,O,qB,s8BAKG,OACL,sI,sCAEC,S,CAED,oDACA,4E,OACC,2K,OAED,+CACA,gDACG,oE,OACF,4BAEG,wM,OACF,S,Q,OAIF,iB,irBAGK,OACL,mDACA,gJACA,mE,OACC,4K,OAED,sCACA,kDACC,yYACA,W,KAED,oB,wvBAGK,OACL,8G,sCAEC,S,CAED,IACA,4HACA,OACC,K,cACD,OACC,yHACD,O,cAEA,OACC,gH,sCAEC,S,CAGD,S,qBAEA,wK,OAED,uC,QACI,4M,QACF,S,Q,QAMF,2G,QACC,+G,+CAEC,S,C,4BAGA,gD,C,QAGF,QACC,+G,+CAEC,S,C,uB,inBAKG,OACF,wM,OACF,8J,OAED,WACA,6CACA,gD,yBAEC,4BACA,2B,CAED,iB,6hBAGK,OACF,wM,OACF,uK,OAED,yCACA,yCACA,yCACA,yCACA,uBAKA,gD,uEAEC,mE,CAED,iD,ohBAGK,OACL,8G,+CAEC,Y,CAED,+I,iQAkBI,SACJ,kBACA,kBACA,8BACA,IACA,+IACC,mBACI,wCACH,gEACA,WACA,2BAH4B,gB,C,KAM9B,Q,6NAMI,6FACD,sK,OACF,oB,OAED,4G,uVAqDI,6FACD,qK,OACF,0C,OAED,wE,0JAQA,qC,2kF,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,sC,oC,oC,wE;2vBCpcA,aACA,uJACC,uJACC,uJACC,qE,K,K,KAIH,mE,iVCpBI,eACA,UACJ,qBACA,mCACA,wFACA,sDACA,qcACC,iDACA,4B,kBAEC,mBACA,O,CAED,4N,mQAED,6bACC,iDACA,6Q,4PAED,YACA,8F,yCAEC,6B,CAGD,8EACA,iBACA,8G,yCAEC,6B,CAED,2H,yCAEC,6B,CAED,sB,qY,4F,4F,4F,4F,4F,4F,4F,4F,4F,8F,8F,8F,8F,8F,8G;yxIChBK,OACL,OACC,uH,sC,+BAGE,gB,CAED,S,CAED,yCACA,yB,iBAEC,a,MAEA,0C,C,gBAGA,c,C,qBAGF,iB,ygBAKK,OACL,iD,OACI,0K,OACF,Y,O,OAGF,8BACA,2CACA,yBACA,sE,gBAEC,4C,CAED,oB,69BAKK,OACL,iC,SAEE,qC,CAEE,8L,OACF,S,OAED,wB,QAEC,6B,CAED,oB,6BAEC,6B,CAED,uJAKA,WACI,YACJ,2CACC,8JACA,0F,K,iBAGA,8C,C,iBAGA,mD,CAED,+B,QAEC,qC,CAEE,qM,OACF,S,OAID,gDACC,+E,KAEG,gBACA,kCACH,+BACI,qGAMH,qDACA,wIACI,8EACH,qGADgC,mB,CAGjC,YACA,YAZiC,a,CAFF,Y,CAmB7B,sBACJ,2H,WAEE,2FACA,2FACA,8F,MAEA,2FACA,0GACA,8FACA,cACA,c,CAED,gC,M,qBAGF,iB,i+BAKK,O,iBAEJ,+C,CAGD,4C,OACI,qK,O,uEAED,Y,C,iCAMA,0B,CAED,c,O,OAGC,mJ,eACF,6BACA,8BACA,2CACA,8C,CAGF,OACK,kDACH,+C,OACI,yK,QACF,Y,Q,Q,uCAID,Q,CAED,yBACA,2C,yFAEC,mR,CAED,2BAd8C,W,qBAgB/C,oC,6kBAGK,OACL,8C,OACI,qK,OACF,gB,O,OAGF,qCACA,yBACA,2CACA,oB,8dAGK,OACL,4C,OACI,qK,OACF,Y,O,OAGF,sDACA,sDACA,yBACA,iDACA,oB,2bC3KI,kCACH,a,irBAIC,mGACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FACA,2FAbiB,W,S,CAkBlB,+GACA,oGACA,6FACA,kGACA,kGACA,kGACA,kGACA,kGAGA,2BACA,0BACA,0BACA,4BACA,yBACA,0BAGA,UACA,WACA,0BACA,uBACA,yBACA,WACA,cACA,YACA,cAGA,YACA,cACA,UACA,WACA,6CACA,8CAGA,iHACA,iHACA,iHACA,kHACA,kHACA,iHACA,iHACA,iHA9DkB,W,CAkEf,oCAMH,qHACA,0GACA,oGACA,oGACA,mGACA,oGACA,oGACA,oGAGA,kCACA,oCACA,oCACA,mCACA,mCACA,oCAGA,YACA,cACA,mCACA,oCACA,oCACA,YACA,cACA,YACA,cAGA,YACA,cACA,YACA,cACA,8CACA,8CAGA,oHACA,oHACA,qHACA,qHACA,qHACA,qHACA,qHACA,qHAlDkB,a,C,0CCrHd,YAAgC,gC,qHAKhC,YAAqC,qC,gXAsHrC,O,+BAEJ,iE,C,gBAKA,mHACA,mHACA,gC,CAGD,kJACA,2B,QAEC,Y,CAED,S,0SAQK,OACL,6CACA,sB,gBAEC,2CACA,yBACA,2C,C,wYAMI,OACL,mDACI,6J,O,4B,O,qBAIJ,iGACA,2BACA,sB,oC,osBASK,O,gCAGJ,iGACA,2BACA,sB,iB,4B,C,4G,mC,CAOA,2BACA,sB,sC,CAID,sBAEA,4G,sC,4B,CAIA,sB,iB,oC,CAKA,4G,sC,4B,CAIA,sB,e,mC,C,wC,2nBASK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,mEACA,iBACA,2B,kBAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,8bAIK,O,iC,gBAIH,0B,CAED,sB,CAGD,OACC,yB,QAEC,I,CAED,2BACA,W,UAEC,c,CAEE,6J,O,+BAED,qB,CAED,S,O,qBAGF,iB,isBAIK,O,qBAEJ,qC,CAED,IACA,UACC,UACD,iBACC,UACD,iBACC,U,MAEA,qC,CAEE,6L,OACF,S,O,sBAIA,0B,CAED,gDACA,+C,iCAEC,qC,CAGG,wCACH,iLAGI,kC,sKAEF,8C,CAFiB,W,CAMnB,kL,uFAEC,6B,CAGD,mGACA,oD,uBAEC,8C,C,qBAGA,gB,CAED,UACA,UAYC,gBAED,gBAQC,KACA,W,UAKE,gB,CAEF,iB,6KAEE,gB,CAEF,iB,+CAEE,gB,C,CAIH,gBAUC,KACA,W,6BAEE,gB,CAEF,yB,gBAEE,gB,CAEF,iB,+CAEE,gB,C,C,CAKH,qFACA,qFA3FwB,W,CA6FzB,iB,k3BAIK,OAEL,iCACC,WACA,4G,sCAEC,S,CAED,a,QAEC,6B,CAED,iFAGA,O,SAEE,gB,CAED,YACG,+L,OACF,S,QAED,wHACC,wO,K,cAEF,O,UAEE,gB,CAED,aACG,mM,QACF,S,QAED,wHACC,+W,K,qBArBD,6B,O,qB,eA0BD,qC,CAED,iB,6mBAIK,O,eAEJ,qC,CAEE,6L,OACF,S,OAED,4CACA,iB,idAGK,OACL,qC,OACC,8G,OAEE,6L,OACF,S,OAED,WAEA,0FAEA,qC,OACC,kH,OAED,iB,qfAGK,OACL,sC,OACC,8G,OAEE,8L,OACF,S,OAED,Y,2FAGC,2BACA,2B,CAGD,qC,OACC,kH,OAED,iB,kqBAIK,OACL,MAGG,6L,OACF,oB,O,6CAGA,8C,CAID,OACC,0H,sCAEC,oB,CAED,iDAqBC,kBACA,mH,sCAEC,oB,C,qBAGF,WACA,yC,QAEC,c,QAED,uCAGC,8G,sCAEC,oB,C,uB,YAID,c,CAED,kD,QAOC,c,QAKE,iM,QACF,oB,QAED,gD,QAEC,gD,CAGD,yOACA,QACC,sBACA,mG,cAEC,oB,C,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,Q,MAEE,4B,CAED,mG,eACD,QACC,qC,QACC,+F,uBAEA,mG,Q,eAEF,QACC,0G,eACD,QACC,2G,uBAEA,uF,QACC,+F,e,QAEA,0B,uBAEA,0B,Q,Q,sCAID,oB,C,qB,uBAID,yB,C,uB,2BAIC,sB,oBAEA,wB,CAED,yB,CAED,8C,igBAUK,O,2BAEJ,mG,C,8BAYA,sCACA,eACA,8BACI,0DACC,+DACH,gRADoD,2BADH,kCAKnD,4E,CAYD,sCACA,eAEA,mLASA,0HACC,6MACI,iEACH,iB,OAEC,iG,CAEG,uEACH,iB,OAEC,iG,CAED,yPALoD,mCALH,0C,KAcpD,oB,gHAGK,O,WAEJ,a,C,kDAKA,Y,CAED,iE,wKAGK,OACL,2GACA,sCACA,eACI,8CACH,yBACA,4BACA,4BACI,+DACH,qOACA,yTACA,6TACA,sIAJsD,W,CAJf,W,CAWzC,oB,iRAKI,2KACJ,oH,oWAMI,2KACD,4K,OACF,0C,OAED,UACA,UACC,iEAKD,gBACC,e,cAEC,c,CAED,uDAKD,gBACC,iE,CAMD,oE,+KAIA,wC,mFCrxBK,O,gBAEJ,+CACA,gEACA,O,CAGD,cACA,cACA,iGACA,iGACI,IACJ,cACA,WACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,IACD,iBACC,I,MAEA,mC,CAED,wEACA,gE,gBAGC,oCACA,mFACA,oC,C,++DAKI,O,gBAEJ,mC,C,4GAGA,qC,CAEE,6L,OACF,S,OAED,gB,iCAEC,kE,CAEG,YAKJ,IACI,kCACH,mGACA,KACA,qL,YAEE,I,C,K,QAID,2C,CAED,0FAMI,kC,gKAEF,4C,CAFiB,W,CAKnB,kLAEA,oL,4EAEC,6B,CAED,gL,4EAEC,6B,CA9BqB,W,C,oBAoCtB,iD,CAmBD,2C,kBAEC,gHACA,gHACA,gIACA,4H,2CAEC,8C,C,4BAGA,wE,C,sCAGA,oD,C,CAKF,0CACA,8IACA,+I,qCAEC,iB,C,kBAGI,oCACH,mF,uGAEC,sT,CAHqB,a,C,CAQxB,gCACA,wBAGC,eACA,aAGA,sBACA,KAEG,wCACC,wCACC,uCACH,mFACA,yFACA,yFACA,kLACI,sDA0BH,8C,QACC,wFACA,kH,uBAEA,gBACA,sEACA,gGACA,a,oDAjCqB,a,e,C,Q,kBAyCrB,2O,MAEA,uB,CAGD,+C,QACI,mX,QACF,U,Q,uBAGD,MACA,0C,QACC,aAEA,gS,uCAEC,U,C,UAGA,uC,CAED,gI,uCAEC,U,CAED,0JACA,2G,QAGD,sD,QACC,+B,uBAGA,sKACA,sCACC,gI,uCAEC,U,CAED,mBACA,eACA,+C,QACC,mB,UAEC,e,CAED,gI,uCAEC,U,CAED,qL,uBAEA,gD,QACC,4CACA,+C,QACC,kI,uCAEC,U,CAED,wC,QAED,+BACA,e,QAED,c,QA9BmB,a,uB,Q,Q,kB,8BAuCrB,2OAlHoB,a,e,C,CA6HlB,qCACH,+YAD8B,a,CAG/B,QACA,2B,gBAEC,qG,MAEA,MACA,WACC,qGACD,iBACC,sGACD,iBACC,sGACD,iBACC,qG,MAEA,oC,C,CAIE,oCACH,eACA,gBACI,oCACH,6F,YAEC,K,iBAEA,O,MAEA,e,CAED,uHATkB,a,CAHD,a,CAnJG,a,uBALD,a,qBAyKvB,aACA,yI,QAGI,yM,QACF,U,Q,4CAGA,+B,CAED,mB,aAEC,O,CAGD,gCAEA,sBAEA,W,QA7LqB,a,qBADD,a,qBAmMvB,iB,m/DAKK,OAEL,uC,O,eAEE,mC,CAED,6G,sCAEC,S,C,MAGA,wC,CAED,iB,OAID,IACA,8C,OAEC,kCACC,IACA,kH,sCAEC,S,CAED,iBACA,aAEA,sEACA,OACC,+C,QACC,wCACA,8C,QACC,sH,sCAEC,S,CAED,uC,QAED,gB,Q,eAEF,QACC,IACA,iH,uCAEC,U,C,QAGA,K,C,uBAGD,wC,QAGD,4I,sCAEC,S,C,QAGA,sC,C,eAGA,2J,CA3CmB,W,qB,OA+CtB,8C,QACC,+BACG,uM,QACF,U,Q,QAGF,iB,0uBAKK,OACL,kCACC,qEACA,qH,O,UAEE,c,CAED,WANmB,W,c,OASpB,6G,sCAEC,Y,C,OAXmB,W,c,C,uFAiBnB,uK,MAEA,uK,CAnBmB,W,qBAsBrB,oB,oXClSyB,eAApB,OACL,IACA,2I,aAEE,S,C,KAGF,8FACA,gBACI,mCACH,yBACI,+GACH,iNACA,YACA,WAHkC,iB,CAKnC,4BAP6B,W,C,iCAe9B,2HACC,2B,K,8iK,4F,4F,4F,4F,4F,yG,uB,kC,mN,4B,iiD,I;srBCjJD,qD,kMAIK,OACL,YACA,+CACA,Q,0KAQI,YACJ,KACA,qCACC,WACA,wFACA,2GACA,WACA,I,CAGD,wFACA,qD,mXAG0C,mBAArC,OACL,wC,yBAEC,uB,CAED,qD,OACC,qD,OACC,+GACA,SACA,6BACA,cACA,6BACA,SACA,6B,OAED,qD,OACC,gHACA,SACA,6BACA,SACA,6BACA,S,wBAEC,6BACA,4G,CAED,6B,O,O,yB,yBAKA,IACI,8C,yBAEF,wBACA,M,CAH6B,W,CAM/B,I,CAED,iCACA,6BACA,UACA,oC,C,+wBAUI,OACL,yBACI,KACA,IACJ,YACA,+C,yBAGC,cACI,QACJ,mC,OAEC,QACA,I,CAED,Y,CAED,2BACA,qNACA,4B,4DAEC,wB,CAED,2GACA,S,snBAKK,OACL,6L,+cAKK,OAAqC,0L,mcAIrC,OAAuC,4L,ucAGvC,OACL,0LACA,U,6cAIK,OACL,6LACA,U,idAIK,OACL,4LACA,U,ucAIK,OACL,6FACA,6FACA,uB,6cAIK,OACL,gGACA,6FACA,uB,idAIK,OACL,+FACA,6FACA,uB,sYAIK,OACL,YACA,+CACA,c,oTAIK,OACL,YACA,+CACA,S,8SAIK,OACL,YACA,+CACA,gB,uTAIK,OACL,YACA,+CACA,W,mVAoDA,0LACA,U,4tD,4F,4F,4F,4F,4F,4F;urBCzQA,WACA,yBACA,8GACA,4BACA,wLACA,0BACG,qK,OACF,S,OAED,iB,sWAII,YACJ,0IACA,mE,OACC,sG,OAEE,8L,OACF,sG,O,oT,4F,4F,4F,4F,wG,iD,O,sF,mB"}